首页 > 数据库 > 数据库开发技术 > DDD的应用框架实践分享
分享一个DDD的应用框架,写了一个简单的demo。
已经在在生产实践。
git地址:https://github.com/yxkong/ddd-framework
框架结构如下:

项目结构如下:

示例流程图:

简单说明:
只启动一个应用在adapter层启动;
接口请求到adapter层,调用DistributeController;
controller层做上下文转化以及调用application层;
application层进行模型依赖构建,以及领域执行前后的特殊处理;
domain层进行了业务逻辑实现(和技术框架无关),通过gateway做防腐层;
infrastructure层进行具体技术的实现;
注意事项:
业务逻辑和技术实现无关,和数据库存储无关;
关键业务的数据库实体不要引入到domain层,在infrastructure将数据DO转换成领域实体,不要怕麻烦;
这个应用框架里,没有做全充血,领域实体只处理了基本业务逻辑判断,将一些通用方法暴露,具体落库操作,通过gateway执行;
gateway防腐层,具体实现可以自己处理,只要能保证业务的最终一致性即可;
领域上下文,可以按具体的领域功能划分,可以细致到接口层级,如果接口底层共用,则抽取;
弱化了值对象、领域实体的作用,简单的增删改,可以直接绕过domain层执行;
该应用架构只是参考了DDD的思想,并没有严格按照DDD的分层结构;
不要怕麻烦,一定要将业务逻辑和技术实现解耦;
原文作者:5ycode;如有侵权,请联系管理员删除。