繁体   English   中英

什么是树节点类的正确UML类图,引用了父节点和后代列表?

[英]What is a proper UML class-diagram for a tree node class with reference to parent and a list of descendants?

节点数据存储在数据库中,其中每个节点记录具有具有父节点ID(如果有的话)或NULL的外键字段。 所以似乎节点只有一个链接。 但我的程序使用ORM读取/写入数据到此DB,并且我的业务逻辑节点用类引用,该类具有对父节点和后代列表(两个链接)的引用。

//pseudocode
class TreeNode {
  TreeNode Parent
  TreeNode[] Descendants
}

在此输入图像描述 要么 在此输入图像描述

1.这个类的正确UML类图是什么? 它有两个链接还是一个?

2.也许我应该使用两个图表(一个用于DB,一个用于ORM使用的类)?

在这种情况下只有一个关联。 如果X是Y的父,那么Y是X的Desdendant,对吧? 只有一个链接,从两个角度可以看出。

诀窍是观察关联结束角色 (在图表中简单地忽略)。

所以,角色如下:

  • “父母”(0..1),在钻石的结尾处。
  • “后裔”(0..n)在对面的协会端

这是最终的图表,以及一个明确的对象图,只有一个链接,即 - 只有一个关联: 在此输入图像描述

如果你想明确地展示2个抽象层,你总是可以使用2个图表。 但是,我觉得努力没有理由,因为映射清晰明了。 我的抽象UML图绰绰有余,第二个总是可以生成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM