背景
如图所示, 冯诺依曼计算机体系结构;
由于最近做业务需求做到发瘟, 借此发散一下思维;
最近业务需求的痛点如下:
- 基础代码骨架已固定, 业务流程固定,
- 然而, 业务中产品的配置需要非常灵活, 并且有可能需要跨过某段业务流程, 直接执行下一段;
直接方案:
if/else
当然是能够决定条件分支的, 但架不住产品数量巨大, 维护if/else
都会变成一种可怕的工作量; 并且由于if/else
分支居多, 新同学进来需要维护都要看几天代码...
随想方案:
思考后得出一种较为灵活的方法: 自定义Java-ClassLoader
, 将Class文件
进行外部存储(may be mysql etc.), 需要时再进行动态编译并进行业务流转;
这种方式在我以前接触过的业务系统中有见到过, 虽然当时只实现了非常基础的功能, 不过还是解决了挺大一部分工作量;
当然, 目前还只是留个念想, 方案落地不是能够一人推动的, 需要整个项目组为之努力一段长时间
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。