【问题标题】:UML: How do I do this...?UML:我该怎么做……?
【发布时间】:2011-10-04 16:04:50
【问题描述】:

关于 UML 的几个问题: 我是否在我的 UML 图中包含主类? 如果我确实包含它,并且它实例化了对象,我是否会从我的主类到它实例化的类绘制一个空箭头(例如 ->)? 我什么时候使用菱形与箭头?

我只是对这三件事感到好奇......虽然一篇文章也会很有帮助,但有人可以解决这三个问题吗?

非常感谢。

【问题讨论】:

    标签: uml


    【解决方案1】:

    我是否在我的 UML 图中包含主类?

    UML 图有很多种类型,但我怀疑您的意思是类图。你的问题的答案是字面意思:如果你愿意。 UML 的美妙之处在于您可以制作许多图表,这些图表的细节各不相同。有些图表将只显示几个类,有些则很多。这个想法是你为不同的受众以不同的视图绘制系统的不同部分。尽可能多或尽可能少地绘制图表。如果您正在制作一个只有几个类的非常小的应用程序,那么显示主类可能有意义。给它一个刻板印象或使用一个将它标识为“主应用程序类”的注释。

    如果我确实包含它,并且它实例化了对象,我是否会从我的主类到它实例化的类绘制一个空箭头(例如 ->)?

    你当然可以,再次“如果你愿意”,这里会有某种依赖:主类“依赖”其他类,因为它以某种方式使用它们。也就是说,如果主类 A 实例化了 B 类的对象,那么 A 类需要 B 类来编译,所以如果你愿意,可以将其显示为依赖项。

    我什么时候使用菱形与箭头?

    菱形表示aggregationcomposition,用法如下:如果A类有B类的字段,那么从A到B的箭头上面有一个菱形需要 A 面。 “纯箭头”只是显示了一个相对未指定的依赖关系。当A类使用B类时,您可以从A类到B类使用它。也许A类的方法使用B类的实例作为局部变量。 A 中的 B 的包含(组合或聚合)不包含在普通依赖项中。

    【讨论】:

      【解决方案2】:

      您似乎不是 UML 专家,但这不是问题。我建议将您的代码简单地逆向工程为类图,然后在黄色矩形内添加您自己的注释,该矩形具有与您认为重要的连接器链接的连接器。 您将获得代码的图形表示,并且能够在没有真正的 UML 知识的情况下添加价值 cmets。

      UML 类图非常简单,可以涵盖项目的所有需求。如果您不了解 UML,那么只需通过反转代码来做类图并享受 :-)

      【讨论】:

        猜你喜欢
        • 2018-01-16
        • 2012-05-26
        • 2014-01-23
        • 2011-05-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多