前言
用了多年虚拟仪器,如果说一点感想都没有,恐怕是不现实的。自从开始接触到LabWindows/CVI,我就一直执迷于它那类似于C又仿佛脱胎于Visual Basic的语法规则,十多年来我一直使用,算是非常忠诚的用户。
大约在2004年,我就萌生了要写一本LabWindows/CVI书的想法,也是在那个时候,我还在天津科技大学念博士,学习之余,写书全当是娱乐了。其实,那个时候的LabVIEW已经很火爆了,但是,LabWindows/CVI在高校中的人气还是很高的,一批知名学者、专家教授的教材还能买到。我想,他们写的书理论性太强了,程序设计的内容并不多,当时的教材大多围绕LabWindows/CVI 5.5和6.0来写,实际上已经是有点落伍的了。我想从程序员角度重新解读这个开发工具,想让大家知道,其实,LabWindows/CVI除了能做测控程序,还能做更多的事。
于是,我开始做如计算机驱蚊程序、板球游戏等一些好玩的小实例,一来可以自娱自乐,二来呢,天津的蚊子着实厉害,一到夏天,我通常满腿都是大包,类似于南市食品街的小包子“狗不理”,估计这些蚊子享用大餐之后,要好好消化几天了。也经常遇到回头客,刚落在身上,我“啪”的一拍,还有半肚子的血,那间屋子平时只有我一个人,还能是谁的血呢,打死了它,却流下了我的血。
直到2012年,我的博士后工作终于完成,从北京科技大学控制科学与工程流动站出站,时间上也终于有了保证,开始将我从十多年前积累的一些小程序陆续拿了出来,累积成册,这一个过程连我自己都感觉很奇怪,感觉平时没做什么,怎么会留下这么多痕迹呢?
对于程序设计,我有自己的看法。通常来说,教材都是侧重于理论的,所以,大家如果学完谭浩强教授的C语言教程,至少还需要一本专业级的教材,才能真正入门。基础的C语言教程是以基本原理为主的,而专业级的教材应该以程序设计的思路与技巧为主,这些思路与技巧可能也都是非常基础的东西。但是,在实现中却又千差万别,这也是我在书中喜欢以代码来描述逻辑思路的原因。
读书破万卷,下笔如有神,当你读了太多的代码,并且能逐步转化为自己的编程思路时,写代码也是一件水到渠成的事。有人说写代码太难,我以一个“码农”的身份认为,代码读得多,理解程序设计的方法是很自然的。
谈到学习LabWindows/CVI的期望,我希望大家在学习时不要太急,应从代码入手,先仔细分析代码编写方法,然后上机调试,而不是直接把书中附带的光盘代码拿过来运行,再做囫囵吞枣式的浏览,这将导致事与愿违,学习的时间会显著加长而非缩短,并且对于技术细节的把握过于粗糙,之后程序设计时反而会不断遇到各种问题。
一开始,我将书中的一部分内容以随笔的方式,每天放一点到vihome的论坛,涉及感觉、思路、想法、技术、专业性的东西。网友看了部分文档后觉得还好,于是,我鼓起勇气,把内容扩展了出来,把小问题拓展开,谈一谈自己的感受。作为教师,职业的关系,养成了经常写些文字的习惯。文字与体会多了,便也想集结成册,把多年珍藏的家珍也悉数奉上,以飧读者。由于作者水平有限,错误及不妥之处在所难免,恳请读者批评指正。
作者
2013年9月于北京