完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 ZHZJK 于 2016-8-30 12:44 编辑 第二月提问投贴 https://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架构的创作就像创作一幅幅涂鸦册。 但是如果涂鸦的是一个熊孩子,那么就无法保证创作的质量了。 在架构中,我们可以将一些常用的功能写在架构里面,变成模板,以供我们以后快速的去使用。例如:运行时间功能,全屏功能,动画功能。。。。。。 在下图中用户中选择浏览,就可以选择我们自己编写的模板架构。 评分 |
|
相关推荐
61 个讨论
|
|
有价值,大神
![]() |
|
|
|
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
Labview生成的exe程序,源程序找不到了,有什么办法可以对exe程序的界面和菜单等进行调整和编辑
1102 浏览 1 评论
想通过labview实现这个二维数组转成一维数组的功能,但是不知道怎么搞?新手求图(苍蝇戳手)
1409 浏览 3 评论
关于DAQExpress软件中电压的最大值最小值是根据什么来确定的?
1982 浏览 1 评论
基于LabVIEW的声发射定位:如何准确获取信号到达不同传感器的时差?
1738 浏览 1 评论
2726 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-23 18:39 , Processed in 0.466199 second(s), Total 47, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191