В чем разница между моделью данных и объектной моделью? - PullRequest
16 голосов
/ 15 марта 2010

CWM - моделирование данных

UML - это моделирование объектов.

Может кто-нибудь объяснить разницу, которую может понять непрофессионал?

Ответы [ 2 ]

16 голосов
/ 15 марта 2010

Объектная модель: имеет дело с объектно-ориентированным «планом» вашей системы. Это включает в себя диаграммы классов (классы, которые вы будете создавать), отношения между этими классами, методы в классах, свойства и т. Д.

Модель данных: имеет дело с сущностями на уровне базы данных. Например, как классы в OM будут храниться в базе данных, в каких таблицах и т. Д. Таким образом, DM обрабатывает схему таблиц, отношения между различными таблицами (PK, FK) и т. Д.

DM не имеет сложных ОО-функций, таких как полиморфизм, наследование, перегрузка и т. Д., Которые обычно перечислены в ОМ.

В качестве грубого примера, два класса в ОМ могут быть сохранены (сопоставлены) в одной Таблице в DM, подобно тому, как сотрудники и сотрудники могут быть сохранены в одной таблице БД.

2 голосов
/ 15 марта 2010

Моделирование данных касается проектирования и создания структуры вашей базы данных, т.е. как хранятся данные.

Объектное моделирование имеет дело с тем, как приложение взаимодействует с информацией, полученной из внешнего источника, например, конечный пользователь, база данных, веб-сервис и т. д.

Допустим, например, вы отслеживаете историю клиентов для отдела продаж. Департамент нуждается в имени клиента, адресе, телефоне, электронной почте и истории покупок.

В модели данных вы определяете таблицы и поля, в которых будет храниться каждый отдельный фрагмент данных. В это определение вы можете включить такую ​​информацию, как максимальная длина, тип данных или необходимость данных.

В объектной модели, помимо обеспечения соблюдения правил, установленных в модели данных, вы также можете добавить дополнительные варианты поведения, такие как проверка правильности форматирования адреса электронной почты или использование заглавной буквы первой и фамилия. Правила такого типа, как правило, являются более сложными и подробными, чем правила, установленные в модели данных.

В любом случае, цель объектной модели состоит в том, чтобы упростить управление данными в самом приложении и выполнить проверку данных более высокого уровня перед их отправкой в ​​базу данных.

...