知识卡片

区分OO聚合/合成与DDD聚合

普通读书笔记卡 · 1973.ad

内容

须厘清OO聚合/合成(类间组合关系,表达整体含部分)与DDD聚合(是边界)的区别。如Account与Transaction有OO聚合关系却分属两个DDD聚合;Question与Answer是OO合成关系却共组一个以Question为根的DDD聚合。

参考来源

- 位置:《解构领域驱动设计》15.4.3(源文件:_epub-src/OEBPS/027.xhtml) - 结论依据:避免把OO组合关系与DDD聚合边界混为一谈。 - 原始内容:我们必须厘清面向对象的聚合(OO聚合)与领域驱动设计的聚合(DDD聚合)之间的区别……DDD聚合是边界,它的边界内可以只有一个实体对象,也可以包含一些具有关联关系、泛化关系和依赖关系的实体与值对象。