领域模型的基本构造块:
1.实体(Entity):有业务生命周期,使用标识进行跟踪。
2.值对象(Value Object):无业务生命周期,用来描述实体。
3.服务(Service):无状态的行为类型,表示某种能力。
4.聚合(Aggregate):
1).聚合是一簇相关联的对象,出于封装的目的,将这些对象作为一个单元(业务、持久化和并发)。
2).每个聚合都有一个边界和一个根。
3).边界定义了聚合中应该包含什么。
5.聚合根(Aggregate Root)
1).根是聚合中唯一允许被外部引用的元素,在聚合边界内,对象之间可以相互引用。
2).聚合根使用全局标识,由仓储负责其持久化相关的生命周期,实体使用局部标识,由聚合根负责其持久化生命周期。
6.仓储(Repository)
7.工厂(Factory)
聚合的一致性:
1).聚合内的一致性由聚合自身负责维护
2).跨聚合的一致性由服务负责维护
3).最终一致性
如何保证聚合的一致性:
1).对聚合内的任何修改都要经过聚合跟,聚合跟负责一致性检查。
2).聚合内除了聚合根之外的实体只能被临时使用。
3).值对象因为拥有了值语义,天生安全。
4).服务封装跨聚合的一致性职责。
时间: 2024-10-20 00:23:43