LabVIEW样式检查表7 点击:333 | 回复:0



fjczd

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:552帖 | 36回
  • 年度积分:703
  • 历史总积分:1294
  • 注册:2008年8月14日
发表于:2022-09-17 21:11:17
楼主

LabVIEW样式检查表7

       以下是第七部分。

使用以下清单可帮助保持一致的样式和质量。用户可以自定义这些清单以适合应用的要求。

LabVIEW VIAnalyzer Toolkit提供了以交互方式或编程方式检查VI的风格、效率和LabVIEW编程其他方面的测试

性能清单检查表

在设计VI时,请始终牢记性能。当必须在附加性能、易开发性或代码维护之间做出选择时,请选择最适合特定项目的权衡。

除非必要,否则请避免包含重新分配循环内存的代码,例如包含“生成数组”或“串联字符串”函数的代码。在循环内重新分配内存可能会导致性能降低。

    避免不必要的类型强制。类型强制可以分配内存并导致性能降低。

避免不必要的类型强制。类型强制可以分配内存并导致性能降低。

考虑将打开和关闭资源的代码(如 DAQ 或 文件 I/O 代码)放在循环之外。在循环内反复打开和关闭是低效的。

包含代码以限制连续运行的循环的执行速度。

默认情况下,While  循环执行速度尽可能快,并在执行期间使用所有可用的 CPU 资源。可以使用阻止机制(如 Wait 函数或超时值)来确保 While 循环仅根据需要执行一次,以保留系统资源。

在适当的情况下,使用事件结构监视 UI 交互。

当可以更恰当地在事件结构中使用值更改事件时,请避免轮询前面板控件。避免在事件结构中使用耗时的代码。考虑在应用程序中使用类似于生产者-使用者模式的内容。将值为控件配置的值更改事件的控制终端放在“值更改”事件案例中。

下图显示了一种情况,在这种情形下,您可以接受地将控制终端作为停止按钮放置在事件结构外部。

调整事件数据节点的大小以仅包含正在使用的数据。如果未使用该节点,请将节点大小调整为一个元素,然后将其移动到框架的一角。

有条件的清单检查表

策略性地使用内联和子例程优先级来提高执行速度。

请考虑配置并行  For 循环迭代,以便对性能进行细微调整。

使用局部变量而不是 Value  属性来更新前面板对象

如果对前面板执行许多更新,请使用“按索引获取控制值”函数和“按索引设置控制值”功能。

将In Place  Element Structure用于数组索引/替换元素操作以及cluster读取、修改和写入操作。

子VI检查表

设计每个子VI具有低耦合和高内聚力。这有助于确保每个子VI都易于理解、维护和测试。将子VI的相关组组织到库中。避免使用共享库  (DLL)。

为子VI创建一个有意义的图标。

避免使用默认图标或空白图标。将每个新图标设计为与每个现有图标不。该图标表示调色板和框图上的VI。精心设计的图标可以让您更好地了解子VI,而无需过多的文档。

充分利用可重用、可测试的子VI。

在所有子VI中使用错误输入和错误输出cluster。

在所有子VI中包含错误输入和错误输出cluster,即使子VI不处理错误,因为错误输入和错误输出cluster有助于控制执行流。如果子VI有传入错误,您可以使用case结构通过VI发送错误,而无需执行任何子VI代码。

 

 

   需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目问题,可联系我们。





楼主最近还看过


热门招聘
相关主题

官方公众号

智造工程师