Skip to content

index of Domin Driver of Design

领域驱动设计(DDD)是一种软件开发方法,旨在解决复杂系统设计问题。核心概念包括领域模型,即对业务领域的抽象建模;限界上下文,定义领域模型在特定上下文中的语义;战略设计和战术设计,分别关注系统整体结构和领域模型的实现细节;领域事件,捕获领域中的重要事务。DDD 强调理解业务需求,并与领域专家密切合作,以创建灵活、可维护的系统,能够持续适应变化。

第一,聚合根来保证内部实体规则的正确性和数据一致性; 第二,外部对象只能通过 id 来引用聚合根,不能引用聚合根内部的实体; 第三,聚合根之间不能共享一个数据库事务,他们之间的数据一致性需要通过最终一致性来保证。

在领域划分过程中,会不断划分子域,子域按重要程度会被划分成三类:核心域、通用域、支撑域。

桃树的例子,有根、茎、叶、花、果、种子等六个子域,不同人理解的核心域不同,比如在果园里,核心域就是果是核心域,在公园里,核心域则是花。有时为了核心域的营养供应,还会剪掉通用域和支撑域(茎、叶等)。