В чем разница между моделью данных и объектной моделью?

CWM — это моделирование данных

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

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


person user198729    schedule 15.03.2010    source источник
comment
UML — это унифицированный язык моделирования, и это гораздо больше, чем просто объектное моделирование — en.wikipedia.org/wiki/ Унифицированный_язык_моделирования   -  person Svish    schedule 15.03.2010
comment
Но мы поняли идею, верно? Иногда этого достаточно, чтобы быть точным   -  person user198729    schedule 15.03.2010


Ответы (2)


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

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

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

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

person Vivek    schedule 15.03.2010
comment
Можете ли вы порекомендовать инструмент, который лучше всего справляется с этой задачей в соответствии с вашим опытом? - person user198729; 15.03.2010
comment
Я использую MS Visio Enterprise Architect как для OM, так и для DM. - person Vivek; 15.03.2010
comment
Я не думаю, что модели данных - это только связь между БД и программой. Они также связывают программу с другими потоками данных и источниками, такими как API, обслуживаемые по сети, и активами, загружаемыми из формата сериализации (например, JSON) из файла. Для меня модель данных — это просто объектное представление программы внешнего источника данных. - person Anthony O; 29.09.2020

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

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

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

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

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

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

person Neil T.    schedule 15.03.2010
comment
Можете ли вы порекомендовать инструмент, который лучше всего справляется с этой задачей в соответствии с вашим опытом? - person user198729; 15.03.2010