1

我有一个超类,其他 40 个类继承,此时我想简化图表,确切地说是所有继承关系(40 个关系指向单个类)所有这些“箭头”只是使图表完整混乱,可以简化吗?

4

4 回答 4

0

您是否使用继承来重用代码?我从未遇到过有 40 个子类的情况。无论如何,一个想法是将逻辑相关的类分组为 1 个单独的包图,然后具有包关系。

我想提供一些建议

  1. UML 图是 90 年代的 ;-)。在当前的敏捷世界中,我很少使用这些图表
  2. 研究可以对代码进行逆向工程并在需要时创建类和序列图的工具。这有助于您按需可视化应用程序的相关部分
  3. 阅读有关子类型与子分类的信息
于 2010-11-26T17:50:20.220 回答
0

这是一个很好的问题,因为我在我的一个项目中遇到了类似的问题。我所做的是减小每个类的大小,以便显示名称。然后我选择了一个圆形+分层布局并用我的鼠标移动了所有这些链接。

结果很精彩。我使用的工具是 EclipseUML Omondo。

于 2010-11-27T11:27:17.207 回答
0

我建议如下:

**

  • 场景 1

**

如果您不打算使用该模型进行代码生成

  • 将所有子类放入一个包中。给这个包起一个名字,表明它包含的所有元素/类都继承自特定的超类。例如,如果超类被命名为“SuperFoo”,我会调用包“SuperFoo_SubTypes”
  • 在包中放置注释,表示包中的所有类都继承自超类。

**

  • 情景 2

**

您确实计划从您的模型生成代码:

选项 1 我可能会建议您照常绘制所有继承关联,然后使用建模工具上的隐藏功能隐藏超类。

选项 2 使用替代符号来描述继承/概括,对于每个子类,用斜体字和子类元素的右上角写出超类的名称。此方法在本文中简要说明: http ://www.sparxsystems.com/resources/uml2_tutorial/uml2_classdiagram.html 这当然取决于您的建模工具是否支持此表示法。

我希望这有帮助!

于 2013-12-09T16:28:34.147 回答
0

在 UML 规范中没有直接的方法来简化这种情况,但真的有 40 个类可以从一个类继承吗?我认为您可能需要重新考虑您的设计。

通常,您可以从类中省略属性和方法,至少这样会更好。

于 2010-11-26T17:22:41.857 回答