【发布时间】:2013-06-07 16:12:40
【问题描述】:
我得到了一个描述,需要绘制ER图和类图进行描述。
现在我在理解这两个图表之间的差异时遇到了问题。
当我绘制 ER 图的图实体成为类。我不确定我是否走在正确的轨道上。
请解释一下这两者的区别和相似之处是什么?
【问题讨论】:
-
恕我直言,您将从stackoverflow.com/a/4680506/939250 对相关问题的回答中学到很多东西。
我得到了一个描述,需要绘制ER图和类图进行描述。
现在我在理解这两个图表之间的差异时遇到了问题。
当我绘制 ER 图的图实体成为类。我不确定我是否走在正确的轨道上。
请解释一下这两者的区别和相似之处是什么?
【问题讨论】:
有很多方法可以区分 ERD 和类图。
例如,ERD,也称为实体关系图,仅描绘系统特征。 另一方面,类图显示了系统中最重要的部分,即系统和行为特征。
在统一建模语言 UML 中,特征在“类矩形框”中显示为未加密的文本。 但是,在实体关系图中,特征是“与实体类型相关联的椭圆形”。
ER 图的关系比类图更复杂,更难被人类破译。 ER 图与类图不同,因为它“映射到数据库中的表”,而类图映射到实际对象。
另一个区别是类图有一些在实体关系图中没有隐含和建模的关系。
实体关系图的主要部分由实体、关系和属性组成,而类、关系和属性是类图的部分。
希望这对任何人都有帮助!
【讨论】:
当您想到类图时,您正在考虑行为的组织或简单的功能。例如,使用州税信息计算成本函数。然后你可能有不同的类代表不同的计算功能(参见 GoF 设计模式中的策略模式)。
当您考虑 ER 图时,您正在考虑有关将要存储的数据的存在和关系的规则。一个用户账户必须有一个用户名,一个银行账户只能有一个主用户账户。
总而言之,使用类图可以考虑行为/功能的组织,而使用 ER 图可以考虑数据资产的组织。两者在构建整个应用程序时肯定相关,但在构建应用程序的设计中有两种不同的视角。
希望解释有所帮助!
【讨论】:
ER图:-
类图:-
ORM(对象关系映射):-
【讨论】:
ER 图表示数据模型的抽象表示, 而类图表示静态结构和行为 建议的系统。 ER图的主要构建块是实体, 关系和属性,但类的主要构建块 图是类、关系和属性。类图是 更可能映射到现实世界的对象,而 ER 图最 经常映射到数据库中的表。通常,关系 ER图中的发现比人类更难理解 类图中的关系。
【讨论】: