Slickflow.NET 开源工作流引擎高级开发(四) -- 硬核编码:代码式快速构建流程图
前言:通过设计器交互来创建流程图是比较常见的方式,这种方式是比较方便业务人员对流程的操作。然而,在需要流程模板,或者技术开发阶段以及一些自动化流程的处理过程中,使用代码快速创建流程图也是一种非常有必要的快捷途径。本文重点说明这种方法的实现过程和具体使用价值。
1. 交互式构建流程图
图形交互式一般是指通过界面进行节点元素拖动来绘制图形,并且,每个图像节点元素和连线元素的属性配置,都是逐一需要交互操作并且保存来完成的。其特点是清晰直观,在绘制图形的过程中,可以明确流程图形的整个流转过程。
对于流程使用涉及到的业务人员,图形交互是最适合的工具,因为业务人员不会深入到命令代码,他们只需要通过鼠标拖动、键盘输入和完成图形节点的编排就可以。
2. 代码式创建流程图
传统的图形交互方式是比较方便业务人员创建流程定义图的,图形gui最大的优点是直观,形象,任何人都能理解;但是作为编程方式的计算机处理过程,代码式的命令脚本程序也是大行其道,因为是快速,高效和方便也是需要用到的。
就比如作为一个系统管理员来管理一台服务器,通常更多时候喜欢直接使用命令行的脚本工具,在windows系统里面是powershell工具,在linux平台下的系统管理命令,以及bash等工具。如果没有这些命令级别的程序,那些神通广大的黑客几乎也无用武之地。所以正是这些代码式的脚本程序,极大地丰富了程序功能的强大。
2.1 代码示例
代码构建命令程序核心类是processmodelbuilder,下面就对其接口使用,做以特别示例。
2.1.1 简单串行流程图的代码构建
2.1.2 分支流程图代码构建
2.2 流程图展现
通过代码式构建,会直接生成流程图记录,流程图形分别展示如下。
2.2.1 简单串行流程图
2.2.2 分支流程图
3. 使用价值
虽然代码式快速构建对于业务人员没有直接使用到,或者对于引擎开发人员也不大会直接关注到。但是在一些技术领域,它的价值是显而易见的。暂时罗列两个方面供大家参考。
3.1 流程模板
如上述示例中,我们其实可以算是创建了两个类型的模板,一个是简单串行的流程图形,一个是带有分支的流程图形。假如我们提供给业务人员新建流程时,让他们选择具体是哪一种类型的模板时,这样会节省流程图形中的每个节点或连线元素属性的配置时间。也减轻了业务或流程管理人员的工作量。
3.2 技术人员的利器
技术人员在进行大量流程数据开发或测试过程中,经常需要构建不同类型的流程图,所以代码方式的快捷和便利应该是首选。如果能够熟练使用和掌握这些命令行式的代码无疑也会带来工作效率方面的提升。
4. 结论
通过对代码式构建流程图的工具开发,我们也清楚地认识到,代码式的快速构建流程图可以为不同类型的用户节约大量的时间,从而提升工作效率。而且,这一工具也在不断加强产品的核心竞争力。
下一篇: 笔试题——C++开发简单记录错误模块