DDD:聊天笔记
聚合跟和实体
- 聚合根是实体。
- 实体有生命周期,使用标识进行跟踪。
- 聚合根是全局标识,由仓储或其它服务负责其生命周期。
- 实体是局部标识,由聚合根负责其生命周期。
为什么能应对复杂度?
纵向、横向、时间维度的合理划分,如:分层、分聚合、分上下文、迭代(分时间)。
什么是值对象?
首先值对象是”不可变的“,也就是说值对象是”原子的“,String是值对象,其聚合了Char列表,因为常见的关系数据库内置了对String的支持,因此映射起来比较容易,简单的值对象也被ORM所支持(拉平),但是集合形式的值对象,就需要自己映射了,而且要保证”集合本身“是值对象。