设计理念

本文探讨了DDD架构的设计理念,包括依赖倒置原则在DDD中的应用,SIDE-EFFECT-FREE模式与CQRS架构的关系,以及如何在实践中落地DDD+CQRS的对称性架构。文章详细阐述了各层之间的职责划分,如基础设施层、应用层、领域层和查询层,并介绍了共享数据和服务模块的重要性。
摘要由CSDN通过智能技术生成

设计理念

1. DDD架构演进

1.1 DDD依赖倒置架构

Vernon在它的《实现领域驱动设计》一书中提到了采用依赖倒置原则改进的方案。

所谓的依赖倒置原则指的是:高层模块不应该依赖于低层模块,两者都应该依赖于抽象,抽象不应该依赖于细节,细节应该依赖于抽象。

image.png
从图中可以看到,基础设施层位于其他所有层的上方,接口定义在其它层,基础实施实现这些接口。依赖原则的定义在DDD设计中可以改述为:领域层等其他层不应该依赖于基础设施层,两者都应该依赖于抽象,具体落地的时候,这些抽象的接口定义放在了领域层等下方层中。这也就是意味着一个重要的落地指导原则: 所有依赖基础实施实现的抽象接口,都应该定义在领域层或应用层中
采用依赖倒置原则改进DDD分层架构除了上面说的DIP的好处外,还有什么好处吗?其实这种分层结构更加地高内聚低耦合。每一层只依赖于抽象,因为具体的实现在基础设施层,无需关心。只要抽象不变,就无需改动那一层,实现如果需要改变,只需要修改基础设施层就可以了。

1.2 SIDE-EFFECT-FREE模式和CQRS架构

SIDE-EFFECT-FREE模式被称为无副作用模式,熟悉函数时编程的朋友都知道,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值