ddd为什么不流行(到底什么是DDD)(1)

2004 年,那是在历史上也许并不起眼的一年。那一年 Eric Evans 发表了《领域驱动设计》一书,标志着 DDD (领域驱动设计)的诞生。但 DDD 的诞生并没有马上在软件设计领域激起水花。直到多年后 Martin Fowler 提出了微服务架构后,DDD 才开始正式开启了属于自己的时代。随着微服务设计方法的发展,DDD 也渐渐火爆起来。

那么,到底什么是 DDD ?

DDD 并不是一种架构,而是一种架构设计的方法论,是一种设计思想。

它通过围绕业务概念构建领域模型,实现对业务复杂性的控制,将技术实现的复杂性分离开,简化复杂的业务领域,设计出清晰的应用与领域边界,以解决各种业务问题和保持软件的演化能力。

ddd为什么不流行(到底什么是DDD)(2)

DDD 又分为战略设计和战术设计

战略设计是指通过站在业务视角去分析问题,通过事件风暴去识别并建立起业务领域模型。根据领域实体间的业务关联形成聚合,并在各个聚合之间建立起边界。根据业务和语义边界,将一个或数个聚合分配在不同的限界上下文中。

战术设计是指站在技术的视角,关注领域模型的具体落地实现,设计出实体、值对象、聚合根、领域服务、应用服务化、资源库等代码与逻辑细节。

ddd为什么不流行(到底什么是DDD)(3)

,