1992年,我有了第一台电脑,它的配置我还依稀的记得,CPU是386,没有协处理器(我猜好多人看到这里会去查询啥叫“协处理器”),1M内存,5.25吋软驱,显卡记不住了,但是屏幕是黑白的。印象里,电脑可以滋滋嘎嘎的从软驱启动,DOS启动后,再启动BASIC,编写几行代码,诸如”Hello, World!”一类的,也没写过什么正经代码。
上大学的时候,学了一点点汇编和C。但是自己那个时候把更多的精力放在如何与女孩子相处。时间很快就滑过去了,对于编程的知识,仅限于应付考试,并且,不知道为什么,对C产生了深深的抗拒。
参加工作后,工作内容并不需要用到编程,所以编程能力继续荒废。甚至,说不上是荒废,因为原来也没什么积累,既然没有,也就无所谓失去。
在那个时刻,我思考了很久,到底用什么软件来写控制程序p>
因为天线架的控制程序是公司要对全球发布的软件,所以,开发软件必须是开源的或者是正版的。
以我的能力,开源软件根本用不了,因为相应的支持并不多,例程也五花八门,看不大懂。我知道我这么说,很多人是不同意的,但是这是我本人的感受。另外,开源软件里面,也有很多的”Dirty Code”,会引起版权问题,虽然,我们这种小公司不大会被某些组织盯上进行讹诈,但是为了避免不必要的麻烦,我也就直接放弃选用开源软件。
商业开发软件,无非就是Microsoft的Visual Studio等等,这些系统,也是我这种“独狼式”开发的选手没法使用的。原因还是能力不足,每次都会遇到若干的错误,但是无法解决,找不到解决方案。
兜兜转转之后,我把目光停留在了Labview上,因为这个软件我之前见人用过,有一点点概念,另外,我感觉它会让我不用总把精力放在调用这个库,那个库的,只要考虑数据流就可以了。
于是,我开始尝试用Labview做上面的那个项目,最后,居然写出了一个漏洞百出但是基本能够运行的软件。
2017年,一次偶然的机会,在美国结识了一位CLA级别的Labview程序员,我大言不惭地拿我的第一个作品给他看,问他我的这个程序在他眼里能得多少分完后,想了许久说,跟我讲,“I think, I could give you a C plus”(我想,我能给你打一个C+(约等于百分制的65~70分))。我问他,这么讲是不是为了安慰我,他说,”At least, it could run”(至少,它还能运行)。
是的,其实,这就是Labview的问题,也是它的魅力。
我先说它的魅力。我在写这个项目的时候,没有接受过任何正式的培训(其实,到目前为止,也没有接受过任何正式软件培训),全部是靠Labview的帮助和问度娘解决问题。但是,就是这样,也能弄一个基本能运行的软件出来。
它的问题,就是太容易上手,易学难精。这些年,我写了几个小项目,也看了一些其他人写的程序,包括我说的那个CLA级别的Labview程序员的作品。我越来越发现,我之前写的那些程序就是狗屎不如,任何的错误都没处理;什么状态机等等完全没理会;什么簇、数组,完全不在乎;没有什么文件读写的操作;执行效率根本没有考虑过;全局变量咋用好变量咋用好真思考过……。总结起来,就是一个字,”烂!”
于是,我慢慢从简单地喜欢Labview到开始有一些敬畏了。
我接触的软件项目,全部都跟硬件有关,对于我而言,那就是Labview的天下。随便什么接口,都可以很快跟硬件通讯起来。我没有理由放弃Labview。
我认真地思考了很久,我觉得,如果真的想把软件继续发展下去,必须要重新把Labview从头学起。
我在Labview的使用上走了很多弯路,但是我不后悔。我也不推荐大家走跟我一样的路,我们都知道野路子很难走。
如果真有朋友希望靠Labview做软件并成为职业程序员,请三思。因为,好多使用其他编程工具的程序员并不认为Labview写出来的是真正的代码。因为都是图形化编程,不像其他编程工具都是写代码。
并且,很多程序员认为Labview程序的执行效率跟其他编程工具生成的程序相比,并不占优势。这也容易理解,Labview的代码也许啰嗦的代码会多一些,任何一段代码的执行,都需要时间,不管那段代码有用没用。
我也很少见到像我这种只用Labview做软件的专业程序员。必须要能够熟练使用一些其他的编程工具(比如:Python, Ruby, Java, C#等)。
以上就是我个人对Labview的感受和认知,我也不是专业程序员,所以难免偏颇,欢迎大家指正。
相关资源:Javassist-3.12-Java文档类资源-CSDN文库
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!