小编ddv*_*ddv的帖子

具有深层次结构的聚合根是否适合DDD?

我有一个用户在表单中回答问题的系统.我有代表这个模型的对象,但我不太确定如何根据DDD组织这些对象.

  1. 表格(有自己的清单)章节;
  2. 部分 - >(有自己的列表)组;
  3. 集团 - >(有自己的清单)问题;
  4. 问题 - >(可以有自己的子问题列表)问题;
  5. 问题 - >(有自己的清单)答案​​;
  6. 答案 - >(有自己的清单)Answer_Details;
  7. Answer_Detail - >(可能有自己的子细节列表)Sub_Answer_Details.

每个对象都有超过15个属性,如果没有父对象,每个属性都没有意义.根据DDD,我认为Form实体应该是Aggregate Root,所有其他对象应该是值对象.这意味着我只需要一个表单实体的存储库.在这种情况下,FormRepository将与子对象的各种CRUD方法混杂在一起.我的推理是否适合DDD?我最终得到了一个非常广泛的聚合物吗?我相信这样的表示很容易导致性能问题.

domain-driven-design aggregateroot

7
推荐指数
2
解决办法
3026
查看次数