DDD项目设计模式
DDD设计模式【Domain Driven Design】:
-
项目细节:
-
OOP【面向对象】
-
Design Pattern【设计方法】
-
SOLID【编程思路】
-
-
多个模块的设计:
-
Domain Driven Design【模块之间的拆分,聚合】
-
项目的三层架构:
-
Presentation【与前端交互】:Controller,eg...
-
Application【业务逻辑】:Service + CRUD;
-
Infrastructure:DB,Lib;
缺点:
- Application:业务逻辑复杂化,
- 对infra过度依赖;
- 比较难以使用最新技术框架;
-
DDD:
-
Application:面向不同的业务场景;
-
Domain:面向业务逻辑不变的
-
Infra:是DB,共有轮子,降低依赖【增加一层隔离层】;
-
层与层之间的接口;
- Presentation和Application之间的接口【Rest DTO [Data transfer object]】:不容易修改,相当于api;
- Application 和Domain之间的接口:entity;
- Domain和Infra之间的接口:DataBase TDO,不宜修改;
-
entity:带有苏里的id,有自己的生命状态;
-
valueObject:仅有属性,比如地址信息;
-
aggregate:具有管理权限的entity,通过aggregate达到相互entity的访问,保证内部entity的数据一致性,eg: 微服务;
-
-
-

浙公网安备 33010602011771号