问题的背景:我在 UML 中将两个类相互连接起来,它们都是常规类,其中一个名为“联盟”。

在 MDriven 的“杂项”菜单中,我发现以下“EffectiveName”:“League_children”以及“OtherEnd”:“League_parent”。

这在三个方面令人困惑:

  • "OtherEnd"中没有名为 "League"的类
  • 术语“League_children”和“League_parent”是自动创建的
  • 它说的是“League_children”而不是“LeagueChildren”,我认为后一个更正确,因为您编写代码的方式以及 MDriven 工作区的图表和菜单中的其他所有内容。

  • 我在官方书籍( https://www.capableobjects.com/xdownloads/MDrivenTheBook/MDrivenTheBook-Part2-Design.pdf )中读到了“ child ”和“ parent ”这两个术语,很明显,当您拥有父类(super class)和子类时,会使用这些术语。但是,到目前为止,我的图中的“联盟”或任何其他类都不是父类(super class)”,那么为什么要创建这些名称呢?

    此外,“OtherEnd”不称为“League”,因此不应称为“League_parent”。

    我搜索了我的不同类(class),没有发现我故意/错误删除的隐藏关联。

    最佳答案

    我认为 _Parent _Children 模式就像 MDriven 在将一个类中的关联添加回同一个类时所做的那样。

    如果您检查树中的 Class,我敢打赌您会发现一个指向 self 的关联。如果这是错误添加的 - 删除它。

    通常 MDriven 将关联结束的名称留空 - 那么有效名称将是最后的类的名称。名称 - 如果设置 - 覆盖它。

    当创建关联回 self - MDriven 设置附加 _Parent 和 _Children 的末端的名称。

    关于uml - MDriven 中的 "EffectiveName"和 "OtherEnd"结构,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48431869/

    10-12 02:44