我有一个超类,其他 40 个类继承,此时我想简化图表,确切地说是所有继承关系(40 个关系指向单个类)所有这些“箭头”只是使图表完整混乱,可以简化吗?
问问题
1457 次
4 回答
0
您是否使用继承来重用代码?我从未遇到过有 40 个子类的情况。无论如何,一个想法是将逻辑相关的类分组为 1 个单独的包图,然后具有包关系。
我想提供一些建议
- UML 图是 90 年代的 ;-)。在当前的敏捷世界中,我很少使用这些图表
- 研究可以对代码进行逆向工程并在需要时创建类和序列图的工具。这有助于您按需可视化应用程序的相关部分
- 阅读有关子类型与子分类的信息
于 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 回答