我的目的是创建一个低耦合的土狗系统。
其必须具备以下特点
- 模块间具备完全独立性
- 公有化代码抽成模块
- 代码具备高度自由性
- 新的项目可以根据已有的模块进行快速插建
- 项目的扩展性要非常好
本文将从全局来阐述,doge
是如何做到上述优势的。
环境
- ubuntu
- python
组织架构
项目目前有 3
个引擎。
- 主引擎
- 调用其他引擎,起到入口和中间传递的作用
- 模块引擎
- 写独立的模块服务
- 项目引擎
- 以特定的项目来做每一个服务
- 服务通过顺序调取的方式来调用模块引擎中的独立服务代码
上面的架构目前来看是非常成功的。
比如,当我把 EVM
的模块方法写好之后,我可以几秒钟的时间就能搭建好 ETH
、BSC
等 EVM
链的冲土狗方法。
整个架构的参数传递还是需要看源代码的,有机会的话,我会看情况开源的。