《领域驱动设计》第二部分:模型驱动设计的构造块 第四章:分离领域 阅读笔记
内容概述
将领域对象与系统中的其他功能分离
第一小节
介绍了分离领域的技术:Layered Architecture。
第二小节
指出大部分软件系统都会采用分层的架构,但是分层方案有很多种。领域驱动设计只要求领域层存在即可,并且领域模型在领域层中表现不与程序的其他关注点分离。
第三小节
介绍了一种与领域驱动设计相反的设计方法Smart UI。分析了Smart UI和领域驱动设计各自的使用场景。
设计方法 | 实现方法 | 适用场景 |
---|---|---|
Smart UI | 在用户界面中实现所有的业务逻辑 | 业务规则很少的小型项目 |
DDD(领域驱动设计) | 领域层是单独的一层 | 业务规则多的大型项目 |
第四节
基础设施与用户界面之外的其他影响分离领域层的因素:
- 没有完全集成到模型中的领域元素
- 与同一领域使用不同模型的其他开发团队合作
解决方法:
- Bounded Context
- AntiCorruption Layer
自己一句话总结
应用关注点分离原则,将领域对象与系统的其他功能分离形成领域层。
我的观点
这章内容是对关注点分离原则的直接使用产生的结果,没有任何高大上的内容。唯一可能的贡献,提出了领域层这个名词。
作者对于分层架构的具体讨论中的部分内容我并不认同。具体可以参考《Clean Architecture》作者的观点。