微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 测试测量 > Labview > 第二月 程序架构月讲解 上

第二月 程序架构月讲解 上

时间:10-02 整理:3721RD 点击:

第一月讲解贴 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运动控制卡的编程,不得起思路,谢谢。

写的真心不错,赞一个

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top