DDD概念

    为了做到这一点,DDD规定:

    1. 软件组件应该皆尽可能的为它要构建的领域做建模
    2. 规定可以帮助实现上述目标的方法和构建块

    这些构建块包括:

    • 领域对象 / Domain Object
    • 领域事件 / Domain Event
    • 聚合 / Aggregate
    • 聚合根 / Aggregate Root
    • 存储库 / Repository

    概念描述

    Aggregate

    Aggregate 从技术上说是一个抽象概念,而不是一个具体的实物。

    DDD 中 Aggregate 的标准定义:

    Aggregate 是领域对象的逻辑集合,以形成一个原子而有粘性的整体。

    这些领域对象有两个特性:

    1. 从整体上说,他们可以构成一个逻辑物体

    另外一个典型例子,车辆,由各种对象构成:轮胎,方向盘,发动机,座椅。

    Aggregate Root

    注意事项

    Repository 用来抽象获取和持久化 Aggregate 的方式。

    在 DDD 中,不能直接访问 aggregate, 必须通过 Repository。