我是从LabVIEW的中文版协助文档中触摸“程序规划形式”一词的,这个相对学术化的词语是对一系列用于LabVIEW程序规划结构的概括和总结。在制作房子时,需求针对房子的用处规划整个房子的架构,保证房子在这个架构上的巩固性和可制作性。写程序时相同如此,不同的运用需求运用不同的程序规划结构。例如咱们在LabVIEW中构建一个用户界面型程序时,往往首先在背面板中参加一个大的while循环以使程序持续运转。假如需求响运用户界面事情则还需求参加一个Event事情结构。那么咱们是否从前考虑过以下的这些问题:
- 运用中是否存在并行呼应的状况?如在持续的数据收集进程中,是否需求一起呼应单击菜单的事情?
- 底层获取的数据怎么与上层的数据显现部分进行数据交互?
- 上层的界面怎么受底层程序的操控?
- 同一个循环中选用哪种方法进行数据交换?是局域变量、全局变量、同享变量仍是移位寄存器?
- 程序是否具有可扩展性?
- 假如程序运转进程中,产生体系过错或许硬件通讯过错,是否会中止运转?待过错扫除后是否会持续运转?
- 怎么安排程序中的中心数据结构?是否需求选用面向对象程序规划?
- 怎么记载测试数据并生成报表?怎么保存用户装备参数?
- 怎么处理程序运转中的断电状况?从头启动时的持续运转?数据的最低丢掉?
- 怎么完成运转进程的采样触发和多点采样的同步?
当然,或许仅仅运用LabVIEW暂时地调试或开发某个小的运用,无需考虑上述的问题。可是,假如运用LabVIEW开发一个典型运用的程序却无法逃避这些问题。因而,有必要对各种程序开发的运用进行概括和总结,提取它们对应的LabVIEW程序结构中的共性。此外,针对这些共性研讨哪种结构愈加适合于运用。这些定论概括起来就形成了程序规划的形式。
关于初学者而言,了解和把握程序规划形式往往能起到事半功倍的作用;而对高档用户而言,概括各种程序规划形式又能够不断完善程序中遇到的问题,并衍生一套契合特定运用的特有的程序规划形式。