数据模型和对象模型之间有什么区别?

时间:2010-03-15 09:13:23

标签: data-modeling object-model

CWM是数据建模

UML是对象建模。

有人可以解释一个外行人可以理解的区别吗?

2 个答案:

答案 0 :(得分:15)

对象模型:处理系统的面向对象的“蓝图”。这包括类图(您将要创建的类),这些类之间的关系,类中的方法,属性等。

数据模型:处理数据库级别的实体。就像OM中的类将如何存储在数据库中一样,在哪些表等中。所以DM处理表模式,不同表(PK,FK)之间的关系等。

DM没有复杂的OO功能,如通常在OM中列出的多态,继承,重载等。

作为一个粗略的例子,OM中的两个类可以存储(映射)到DM中的单个表,就像Employee和Manager人员都可以存储在一个DB表中一样。

答案 1 :(得分:2)

数据建模涉及数据库结构的设计和创建,即。如何存储数据。

对象建模涉及应用程序如何与从外部源接收的信息进行交互,例如:最终用户,数据库,Web服务等

例如,假设您正在跟踪销售部门的客户历史记录。部门需要客户的姓名,地址,电话,电子邮件和购买历史记录。

在数据模型中,您可以定义将存储每个单独数据的表和字段。在该定义中,您可能包含最大长度,数据类型或是否需要数据等信息。

在对象模型中,除了强制执行您在数据模型中设置的规则外,您还可以添加其他行为,例如确保电子邮件地址格式正确,或者首先大写客户的第一个字母和姓氏。这些类型的规则往往比数据模型中设置的规则更复杂和详细。

无论如何,对象模型的目的是简化应用程序本身内部数据的管理,并在数据发送到数据库之前对数据执行更高级别的验证。