Mic*_*che 5 uml domain-driven-design
我正在阅读有关埃里克·埃文斯(Eric Evans)的域驱动设计的书- 第5章,涉及关联。他减少模型复杂性的建议之一是为关联强加遍历方向。
我引用:
尽可能限制关系很重要。双向关联意味着两个对象只能一起理解。当应用程序要求不要求在两个方向上都进行遍历时,增加遍历方向可以减少相互依赖性并简化设计。了解域可能会揭示自然的方向偏差。
如何选择关联的遍历方向?通常,当两个元素之间存在关联时,可以在两个方向上进行阅读和理解。是什么导致我们选择一个方向而不是另一个方向?
谢谢
当实体A和实体B之间存在关联时,您经常会发现自己仅使用AB而从未使用BA,这可能是因为A是一个聚合根并且始终是您的起点,因为无论您身在何处都已经引用了它的A操纵B等
我想Evans只是建议您仅在需要时才添加遍历方向,然后在代码中立即使用它,而不是“在以后需要时”过早添加遍历方向。