1.0 DDD分层架构
分层架构,每一层,只与自己下一层发生耦合,类似于网络的7层或TCP/IP的4层模型架构,每一层各司其职,并且只关心向下一层的实现,而不会出现各层耦合。
2.0 洋葱架构
同心圆代表软件的不同部分,从里向外依次是领域模型,领域服务,应用服务和外层的基础设施和用户终端。
洋葱架构根据依赖原则,定义了各层的依赖关系,越往里依赖程度越低,代码级别越高,越是核心能力。外圆代码依赖只能指向内圆,内圆不需要知道外圆的情况,这种架构也是典型的分层架构,和DDD分层架构一样,都体现了高内聚,低耦合的设计特性。洋葱架构也常作为指导微服务设计的重要架构之一。
3.0 六边形架构
层级 | 作用 |
---|---|
外六边形 | 完成外部应用,基础资源等的交互和访问,对于与不同的外部系统交互;外六边形的适配器负责协议转换,保证内六边形业务逻辑的干净 |
内六边形 | 实现应用的核心业务逻辑 |
4.0 DDD分层协作
属性 | 说明 |
---|---|
PO(数据持久化对象) | 与数据库字段映射的数据载体 |
DO(领域对象) | 领域模型核心业务对象的载体,包括实体和值对象 |
DTO(数据传输对象) | 用于前端和微服务交互的数据传输载体 |