【问题标题】:Using Aggregation in Inheritance在继承中使用聚合
【发布时间】:2015-06-11 06:31:07
【问题描述】:

我想创建一个用于创建图形文档的应用程序,每个文档由几个几何形状(球、砖、圆柱、立方体)组成。

所以我为我的应用程序创建了两个图表,如下图所示:

我想知道哪个图表更好,为什么?以及这两种方法的优缺点是什么。

【问题讨论】:

    标签: oop design-patterns uml class-diagram


    【解决方案1】:

    当然,这取决于要求。但从中立的角度来看,左边的绝对是更好的,因为它对GraphicDocument 有更好的视角。您无需了解元素的形式,只需知道它们是形状即可。因此您可以轻松扩展它而无需更改GraphicDocument。

    换句话说:左边是松耦合,右边是紧耦合。

    【讨论】:

      【解决方案2】:

      正如托马斯所说,这取决于,但正确的图表有可能更具体。该图打开了表达存在量化的大门,也就是说,例如,文档中必须有一定数量的立方体。如果你不想表达,左图显然用更少的符号更具表现力。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-12-08
        • 2012-01-06
        • 2014-08-09
        • 1970-01-01
        • 2017-11-23
        • 2012-01-31
        • 1970-01-01
        • 2017-01-20
        相关资源
        最近更新 更多