Why DDD?

<< 实现领域驱动设计 >> 为什么DDD?

img
img

《领域驱动设计 : 软件核心复杂性应对之道》(DDD)于06年出版的时候,经过8年时间的演化,
DDD也开始添加一些新的内容,《实现领域驱动设计》(IDDD)正是对其做了很好的补充。

作为一个OO思维的工程师,我觉得对OO的领悟分为三个阶段:

一、开始使用面向对象
    摆脱面向过程的思维影响,用更自然的角度去思考问题。
    面向对象,用类和接口去封装对象的行为。


二、开始使用设计模式
    模式一词来自亚历山大的《建筑的永恒之道》,使用模式是为了得到无名之质。
    由Gof引入到软件行业,于是有了著名的《设计模式》一书。
    设计模式进一步去除设计上的重复,着重解决一些经典的问题。


三、开始使用领域设计
    领域概念的出现,是为了把业务从其他非业务(技术实现)的泥团之中分离出来。
    把所有跟业务有关的知识封装于领域之内,实现业务与实现的解耦。
    从而避免出现贫血对象,避免业务逻辑四分八裂在系统之中,与页面和数据库深深的耦合在一起。

IDDD对DDD进行了很好的补充:
增加了领域事件的概念,也增加了实际应用中会遇到的问题和解决方案。
《实现领域驱动设计》在DDD 的思想和实现之间建立起了一座桥梁,架构师和程序员均可阅读,同时也可以作为一本DDD 参考书。


img

章节内容:

一 : DDD入门

二 : 领域、子域和限界上下文

三 : 上下文映射图

四 : 架构

五: 实体

六: 值对象

七: 领域服务

八: 领域事件

九: 模块

十: 聚合

十一: 工厂

十二: 资源库

十三: 集成限界上下文

十四: 应用程序