文档清单

CabloyJS自带工作流引擎文档曾经整理出来,欢送大家围观、拍砖

  • 介绍

    • 介绍
    • 演示:CMS审批工作流
    • 单元测试用例集
  • 流程定义

    • 基本概念
    • JSON标准
    • listener标准
    • listener标准-用户工作
  • 流程实例

    • 外观Bean组件
    • 平安沙箱
    • 流程检索
    • 环境对象
  • 转移线

    • 环境对象
    • 程序流
  • 流动节点

    • 基本概念

      • 环境对象
    • 开始事件

      • 空开始事件
      • 定时开始事件
      • 原子起草开始事件
    • 完结事件

      • 空完结事件
    • 流动

      • 空流动
      • 服务流动
      • 用户工作流动
  • 用户工作

    • JSON标准
    • 外观Bean组件
    • 工作检索
    • 环境对象
  • 进阶篇(待续...)

什么是CabloyJS自带工作流引擎

家喻户晓,NodeJS作为后端开发语言和运行环境,样样都好,就差一个NodeJS工作流引擎。CabloyJS 4.0重点开发了NodeJS工作流引擎,并作为内置的根底外围模块,近一步拓展了NodeJS在后端的利用场景,为深刻研发各类商业业务逻辑,提供了根底撑持

NodeJS工作流引擎的特点

  1. 更简便的配置:采纳JSON进行流程定义的配置,辞别XML配置文件的繁杂
  2. 流程定义:反对历史版本、反对启用/禁用
  3. 更清晰的架构:采纳三个外围模块用分层的机制实现工作流引擎的架构,让工作流不再神秘,源码也不再叠床架屋
模块名称阐明
a-flow流程定义、流程实例
a-flownode流程节点(流动节点)
a-flowtask流程工作
  1. 反对业务流程审批流程
  2. 原子数据生命周期联合,内置了一套基于原子数据的审批工作流。参见:原子阶段(数据生命周期)
  3. 表单验证联合,反对别离配置不同流程节点的读取字段权限批改字段权限。参见:表单验证
  4. 可通过AOP机制定制工作流逻辑。参见:AOP
  5. 可通过Listener机制定制工作流逻辑。参见:listener标准
  6. 开放式的架构,反对更多流程节点的定制开发
  7. 蕴含大量测试驱动代码,可疾速上手应用工作流

Activiti的比照

流程定义工作流引擎的灵魂,一个正当的流程定义标准,既要思考应用的便利性,又要思考性能个性的可扩展性

Activiti无疑是Java语言畛域工作流引擎的标杆,根据BPMN2.0标准采纳XML格局来定义工作流

1. JAVA + BPMN + XML

BPMN + XML的长处是规范对立,与JAVA语言的开发调性相匹配。当然,毛病是繁琐,如果脱离了图形化编辑工具,采纳手写XML定义,十分不便当

2. JS + 类BPMN + JSON

CabloyJS通过重复的评估与衡量,决定依然参考BPMN标准的个性集,然而采纳JSON格局进行定义。尽管属于自定义格局,但合乎JS语言的调性,长处是简洁、易写、易读,同样具备优良的可迁移性

相干链接

  • 官网: https://cabloy.com/
  • GitHub: https://github.com/zhennann/cabloy