从UML user guide
第5章开始,我发现了以下内容:
模拟结构关系,
对于每对类,如果需要从一个对象导航到另一个对象,请指定两者之间的关联。这是data-driven view of associations
。
对于每对类,如果一个类的对象需要与另一个类的对象交互而不是作为操作的参数,请指定两者之间的关联。这更像是behavior-driven view of associations
这是我对第一种关联类型的理解,data-driven view of associations
通过以下示例:一个类,User,有三个属性,其中一个是另一个类,Address。
class User {
String firstName;
String lastName;
Address address;
}
class Address {
String streetName;
int streetNumber;
String postalCode;
}
以上情况的UML图是:
请注意,User
的第三个属性转换为关联结束(据我所知,因为它是地址类类型)
我的问题:
1-这是data-driven view of associations
的正确解释吗?
2- behavior-driven view of associations
怎么办?有一个例子可以解释吗?
答案 0 :(得分:0)
数据驱动的关联是与聚合,多样性,导航性和所有这些事物的正常关联。它们定义明确。
在显示属于一个类的函数并将其他类实例用作参数或结果时使用的行为驱动关联。这里也属于任何复杂的连接,例如“监听”,“寄存器”等。它们被显示为依赖关系,可能还有一些额外的字母,例如<< u>> (用法)。它们没有严格定义,不能用于代码生成。
对“UML用户指南”这几个字不太相信 - 所有这些都只是书籍而不是UML标准的一部分。他们不是圣人,并且充满了作者的个人观点(以及唉,谬误)。在UML标准中没有任何地方禁止使用Dependencies在某些参数列表中显示其他类的使用。