合理地封装文件夹: 文件夹作为算法工具的组别,很大程度上直接展示了task中最主要的逻辑,使读者可以在不进行深入阅读的情况下,对task的目标、主要工作流程有一个大体的认知,并且降低了模块间的耦合程度,有助于分步阅读、快速定位。比较常见的分文件夹的方式有: 1-1 按工作步骤,如:预定位、预处理、精定位、数据后处理等。按步骤进行划分,有助于快速定位到需要找到的算法工具; 1-2 按检测目标,如:不同的缺陷类型、不同的特征位置、定位或是测量等; 1-3 按处理手段,如:传统算法和深度学习算法区分等; 合理地命名算法工具: 算法工具的名称应避免如“直线定位”“直线定位_2”“直线定位_3”这种意义不明的,其名称应该能够说明其存在的意义,如“直线定位_预定位”“形态学_闭_去除干扰”,这在task配置过程中选择参数时也非常有帮助。比较统一干净的命名,还可以方便后期批量替换工具名称。 关于名称过长的问题,由于灵闪鼠标悬停在结果树的算法工具上时会显示其类型,因此命名中的类型名不一定需要,或者可以折中地将“直线定位_预定位”缩写为“直线_预定位”; 将重复的流程或结构封装成工艺工具: 工艺工具本质上是对多个功能相同的算法工具进行封装,使整个task的复杂度降低。一般task中之所以有成百上千个算法,正是因为很多算法工具工作相同但是无法复用,只好反复复制。优雅地使用流程控制工具和工艺工具能够从根本上缓解这一问题; 在脚本工具中写适量的注释: 灵闪的脚本中集成了python的引擎,因此其功能非常强大,但也正因如此使很多不便于配置的逻辑都使用脚本进行处理,这便增加了脚本的体量及阅读成本。因此添加适量注释能够降低脚本阅读的难度,增加其可维护性。与python相同,在编辑框中加入#即可作为注释,且基本不会影响task运行。