好吧,我有点困惑,当尝试在 UML 图中显示关系时,我应该向类添加属性,还是绘制与类的关联。
例如,假设我有一个 DFA 类,其中包含 10 个状态对象,每个状态对象都有一组不同的通往 DFA 中各种状态的路径。我应该绘制从 DFA 到 State 类的合成线,还是只在 DFA 类的属性部分中键入所有 10 个状态。
基本上,我试图弄清楚当 A 类包含(或由)一个或多个 B 类组成时,我应该在它们之间画一条线(聚合、组合、关联依赖等),还是只将一个作为属性其他。
本文 http://geertbellekens.wordpress.com/2011/08/10/uml-best-practice-attribute-or-association/试图回答这个问题,但当他开始谈论他画的图表时,我就感到困惑了。
您指出的文章给出了一个指导原则:
在与不同建模团队合作的这些年里,我发现最有效的规则是使用类关联和数据类型属性。
数据类型是一种特殊的分类器,类似于类。它与类的不同之处在于,数据类型的实例仅通过其值来标识。
我有点同意作者的观点,补充一点:你的类图应该是可以理解的。如果你的图表中有许多条线相互交叉,那么该图表就没用了。发生这种情况时,您必须尝试找到可以使用属性建模而不会丢失太多视觉信息的关系,并用属性替换它们。
您可以使用关系而不是属性执行的另一件事是显示双向关系(您可以使用关系的每个类中的一个属性来执行此操作,但会丢失关系的语义)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)