不同类之间的线在 UML 图中交叉是不是不好的做法?是设计味道吗?这是否表明您的类(class)过于纠结或独立或其他什么?它总是/通常是不可避免的吗?还是我想多了?
如果有兴趣,这是我当前的 UML 图。你会看到我一直绕着几条线走,以避免重叠....
最佳答案
Is it bad practice for lines between different classes to cross
是的,因为它会妨碍对图表的理解。
Is it always/generally unavoidable
并非所有图形都是平面的(参见平面性测试),因此有时这是不可避免的。
但是问题并不像“我只是把线路绕一圈”那么简单。有许多构成良好布局或有助于良好视觉美感的规则和建议;仅举几例:
- 线交叉(您可能在某些图表中看到当线交叉时有一个小桥)
- 折线次数
- 总行长
- 层次结构(通常应向上绘制继承线)
您已经可以看到一些规则是相互竞争的;所以布局始终是一种平衡行为。如果您对更多细节感兴趣,我建议您在谷歌上搜索“图形美学”或“自动(图形)布局”。
不幸的是,我拥有的大多数研究论文都在付费墙之后,所以我无法链接到 pdf,但其中一些可以用谷歌搜索;例如UML Diagram Layouting: the State of the Art或 Aesthetics of Class Diagrams
关于UML 类图 - 线交叉是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41756413/