【问题标题】:What is the difference between a composite pattern expressed with arrow point to component and one without?用箭头指向组件的复合图案和没有箭头的复合图案有什么区别?
【发布时间】:2018-06-03 09:50:02
【问题描述】:

我正在设计一个程序,我想使用复合模式。我注意到有两种表达方式:

两者有什么区别? 谢谢!

【问题讨论】:

标签: design-patterns uml class-diagram composite


【解决方案1】:

正如@alper 已经指出的那样,两种表示法之间没有真正的区别。

顶部允许双向导航(因此Component 可以看到Compositeparent),而较低的则没有这种导航能力。为了使缺失的parent 关系更加明显,作者添加了箭头。

所以上面的一个是复合模式的更通用的实现。

【讨论】:

    【解决方案2】:

    除了带 0 的那个接受空的复合对象,而另一个保证复合对象至少有一个部分之外,没有什么区别。

    【讨论】:

    • 感谢您的回复!所以箭头的存在并没有改变什么?
    • 不,我认为箭头是多余的(尤其是细的)。
    • 箭头不是多余的。它指示您可以轻松导航的方向。缺少的箭头表示未指定可导航性。
    猜你喜欢
    • 1970-01-01
    • 2012-01-02
    • 2018-08-26
    • 2014-04-13
    • 1970-01-01
    • 2021-02-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-14
    相关资源
    最近更新 更多