【问题标题】:Data driven view of associations vs. Behavior driven view of associations关联的数据驱动视图与关联的行为驱动视图
【发布时间】:2013-12-04 15:18:56
【问题描述】:

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的第三个属性转换为关联端(据我所知是Address类类型)

我的问题:

1- 这是data-driven view of associations的正确解释吗?

2- behavior-driven view of associations 呢?有例子说明吗?

【问题讨论】:

    标签: associations uml class-diagram


    【解决方案1】:

    数据驱动的关联是与聚合、多重性、可导航性和所有这些东西的正常关联。它们定义明确。

    在显示属于一个类的函数并使用其他类实例作为参数或结果时使用的行为驱动关联。这里也属于任何复杂的连接,例如“listens”、“registers”等。它们显示为依赖关系,可能带有一些附加字母,例如 >(用法)。它们没有严格定义,不能用于代码生成。

    不要太相信“UML 用户指南”这个词——它们都只是书本,不是 UML 标准的一部分。他们不是圣人,充满了作者的个人观点(唉,谬论)。 UML 标准中没有任何地方禁止使用 Dependencies 来显示某些参数列表中其他类的使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-03
      • 1970-01-01
      • 1970-01-01
      • 2017-12-14
      • 2012-01-21
      • 2012-02-12
      • 2017-05-18
      • 1970-01-01
      相关资源
      最近更新 更多