第二月 程序架构月讲解 上
第一月讲解贴 http://bbs.elecfans.com/jishu_605336_1_1.html
第二月提问投贴 http://bbs.elecfans.com/jishu_806953_1_1.html
其实本来准备直接开始讲解的,但是想想,考虑下新手还是觉得先讲下架构的作用。
----------------------------------------------------------------正文:架构的作用----------------------------------------------------------------------------------------------------------------------
很多新手甚至老手都会对LabView的架构有点迷茫。
为啥要使用架构,为啥我要换不同的架构来完成程序。
有时我自己也会有点迷茫,自己开发的新的架构,是否和想想中的一样方便快捷。
下面我就发表下我自己使用的见解,抛砖引玉。
我们先用个例子看下最明显的不同
下图是很多新手喜欢用的顺序结构
上面那个顺序实现了:先给1号字符串赋值,再给2号字符串赋值,最后给3号字符串进行赋值。
如果现在我们要实现:按另一个按钮执行,先给1号字符串赋值,再给2号字符串赋值,最后给3号字符串进行赋值的操作。则必须重新编写一套程序。
现在我们要写另一个与之功能相同的程序。
该程序是使用基本的队列,也就是消费者的结构。
将赋值1,赋值2,赋值3进行模块分割。
利用队列和状态机的基本应用,实现的优化。
两个程序我们对比下,就可以发现第二个程序的一些优点。也可以间接反映出程序架构的一些优点:灵活和节省代码。
讲到这,好了,架构的优点已经讲完了。
。
。
。
。
。
。
。
。
好了,不开玩笑了,这些当然不可能就结束。
这才刚刚开始。我要继续将我的所想写下来了。
不知道大家看过C#的程序没,下图就是C#编写控制控制卡的程序。
说实在,在我看来就是一堆程序块。
命名规则再好,注释再多,架构再牛逼,一眼看上去还是眼花缭乱。
下图则是一个labview控制运动控制卡的模板。
我们程序一眼看上去很分明。
上面事件结构是用户操作,下面循环则是一些处理。
而每下面循环里面每个条件分支里面都有自己详细的操作,操作也一目了然。
由此可以简单看出C#等文本语言基本上使用的是2D的编程方法和思想。
在它们底层的程序文件里面,是从上到下,堆成一堆的函数。
而labview则清爽无比,就像一个个流程图一样。
当然,说这么多,并非是吹labview很牛逼。
而是想告诉大家,labview这个编译器提供了其他编译器所不能拥有的东西。
我们可以一下子看出整个程序的架构。
而相比下,好的labview架构,应该可以一下子看出编写该函数的大体思想;可以快速定位与修改程序中的函数与bug;辅助我们更加快速的进行编写程序。
。
。
。
最后我要谈一谈我的使用感想。
首先,架构不是万能的,但没有架构是万万不能的。
对于架构,够用就行,而非去盲目的去追求高大上。因为高级的一些程序架构,基本上都会包涵一些深层次的思想和程序的应用。
使用困难的程序架构,并不能加快程序的编写,也许因为不能理解其中细节,或者因为一些疏忽,产生一些难以处理的BUG。
在大家合作时要,熟悉并规定一个架构。以便于大家程序的编写,和后期的修改。
当然架构好并不能说明编写的程序好。
说实在labview架构的创作就像创作一幅幅涂鸦册。
但是如果涂鸦的是一个熊孩子,那么就无法保证创作的质量了。
在架构中,我们可以将一些常用的功能写在架构里面,变成模板,以供我们以后快速的去使用。例如:运行时间功能,全屏功能,动画功能。
在下图中用户中选择浏览,就可以选择我们自己编写的模板架构。
最后一点,程序架构写得好,可以去装装逼,哈哈。
好了,程序架构的作用讲完了。
下篇将会讲解真正的内容了,内容将会几天后给出。
期待大神继续————,
加油么么哒
顶!
支持
谢谢
学习
为什么还是只有上啊,期待下
真大神。期待。
加油加油,期待
更新的快点这样才好进步
运动控制模块的架构给个下载
好帖啊 攒积分下载来看看
写得太好了!
@ 太给力了
赞,太实用了,感谢斑竹
讲的好!
继续研究。
写的太好了,顶一下!
装逼炫酷掉咋天
收益非浅,感谢
加油加油,期待
看着有点难 尽量努力去看吧
写的太好了,谢谢
labview软件架构的好
支持一个,虽然没看懂,但是感觉写的很不错
谢谢分享 学习学习
好厉害 希望多对比类型的讲解
thank you very much !1
[poiuytrewu特岗仍提供给
不得不说 收益匪浅
谢谢分享
这个讲学方法很奇特 值得期待
zai@@@@@@@@@@@@@@@@@@@@@
学习下,谢谢分享
很受启发,着手把项目常用框架汇总汇总,哈哈
[poiuytrewu特岗仍提供给
很好的东西,谢谢分享。
学习中。。
学习,谢谢!
期待。。
厉害了,感谢分享
学习了!
感谢小编,学习一下
恩,好东西呀,现在学习先学基础,再学套路
加油大神
学习了。
有道理
牛逼得不是一点半点。哈哈。
请打神收下我的膝盖
讲的很好,谢谢!
小编能否提供一个labview控制运动控制卡的模板,我目前正用LABVIEW做PCI1020运动控制卡的编程,不得起思路,谢谢。
写的真心不错,赞一个