3

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

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

这在三个方面令人困惑:

  1. “OtherEnd”中没有名为“League”的类
  2. 术语“League_children”和“League_parent”是自动创建的
  3. 它说“League_children”而不是“LeagueChildren”,我认为后者更正确,因为你如何用代码编写,而且在 MDriven 工作区的图表和菜单中也是如此。

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

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

我搜索了我的不同课程,并没有发现我已酸/错误删除的隐藏关联。

4

1 回答 1

3

我将 _Parent _Children 模式识别为 MDriven 在将关联从一个类添加回同一个类时所做的事情。

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

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

当创建与自身的关联时 - MDriven 会设置附加 _Parent 和 _Children 的末端名称。

于 2018-01-25T13:37:55.140 回答