配置项组件框架
尝试设计一款配置项的分支框架
需求:
- 业务有大量的流程分支,分支快关打开以后会走新的流程分支,或者做业务通知,类似上图
- 分支开关叫做Options(选项、配置项),配置项会影响流程,包含集中基础类型,boolean做分支判断,Int、String、Double这些能够对应Properties属性
- 这样会导致业务流程上拥有大量的业务分支代码,使得代码的主流程不清晰
分析
- 需要一款框架集中处理分支流程业务,使得分支流程业务能够清晰可控和统一管理的特性
- 尝试设计一款分支流程框架来独立处理每次的业务流程分支
- 所有的配置项采用SpringBoot配置文件application.properties存储,这样配置项能够做分组和多维信息展开,利于结构性设计
- 配置项分两类:影响流程分支、不影响流程分支
- 不影响流程分支的就是普通的属性参数,不单独处理
- 影响流程分支的配置项分为两类:流程走向、流程插入
- 流程插入的功能设计,主流程采用面向对象的方式去编写,分支流程和流程段采用组件的形式,能够保证单例和状态无关,两者衔接采用配置项接口框架
设计
- 不太需要一款完整的规则引擎去处理整个流程的设计,因为规则引擎的特点是能够支持动态灵活的流程和功能
- 设计一款基于注解的分支流程开发功能,能够通过切面的形式实现分支流程的决策和转换,参考liteflow的使用:https://github.com/bryan31/message-demo
- 能够将不同的流程任务设计成组件,通过组件互相嵌入调用,主流程正常业务编写,分支流程通过切面去设计分支调用,不影响主流程的业务关联关系
分类:
structure
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)