DDD概念
为了做到这一点,DDD规定:
- 软件组件应该皆尽可能的为它要构建的领域做建模
- 规定可以帮助实现上述目标的方法和构建块
这些构建块包括:
- 领域对象 / Domain Object
- 领域事件 / Domain Event
- 聚合 / Aggregate
- 聚合根 / Aggregate Root
- 存储库 / Repository
概念描述
Aggregate
Aggregate 从技术上说是一个抽象概念,而不是一个具体的实物。
DDD 中 Aggregate 的标准定义:
Aggregate 是领域对象的逻辑集合,以形成一个原子而有粘性的整体。
这些领域对象有两个特性:
- 从整体上说,他们可以构成一个逻辑物体
另外一个典型例子,车辆,由各种对象构成:轮胎,方向盘,发动机,座椅。
Aggregate Root
注意事项
Repository 用来抽象获取和持久化 Aggregate 的方式。
在 DDD 中,不能直接访问 aggregate, 必须通过 Repository。