跳转至

聚合 (Aggregate)

什么是聚合

CleanDDD 中,聚合是最小的业务内聚模型单元,聚合之间相互独立,从而实现也业务边界的隔离。 聚合由聚合根、子实体和值对象组合而成,其中聚合根是聚合的根部实体,子实体和值对象是按需可选的,作为聚合根的属性存在。

设计原则

  • 一个聚合必须有且只有一个聚合根
  • 聚合之间不允许直接相互引用
  • 聚合之间不共享实体,即不允许通过子实体对象引用其他聚合
  • 聚合内的对象只能通过聚合根或者其子实体的方法进行修改

聚合的主要职责

  • 负责相关业务的数据信息呈现(查询数据来源)
  • 负责基于业务规则对数据进行操作(行为)
  • 负责聚合内数据的一致性保障