2009-10-05 1 views
0

Я узнал о моделировании роли объекта, но не об объектно-реляционном сопоставлении, и я хочу знать, являются ли они двумя способами делать то же самое и каковы плюсы и минусы? Мне объектное моделирование роли имеет гораздо больше смысла. Не могли бы вы сделать краткое, но легко понятное сравнение, если их можно сравнить. CheersВ чем разница между Object Role Modeling и объектно-реляционным отображением?

ответ

3

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

Activerecord, например, представляет собой ORM, который обертывает строку в базе данных. Hibernate является еще одним популярным ORM

Просто Google для ORM википедия объясняет это намного лучше

http://en.wikipedia.org/wiki/Object-relational_impedance_mismatch

+0

Какой из них является объектом Realtional Modeling? –

+0

OP уже понимает Object Role Modeling и, следовательно, не имеет смысла объяснять это. Я объяснил, что такое реляционное сопоставление объектов и где он может найти больше ответов. Я не понимаю, почему я был downvoted – Edwards

+0

Мне жаль, что на самом деле не имеет никакого смысла , Я никогда не упоминал об объектно-ориентированном моделировании. Я сказал, что объектно-реляционное сопоставление и моделирование роли объекта, как я могу рассказать, о чем вы говорите.Я искал их, но хочу знать разницу между людьми, использующими методы. –

6

Роль объекта моделирования: программное обеспечение для моделирования нотацию, специально, определить модели предметной области. Вы можете подумать об этом языке в качестве альтернативы использованию диаграмм классов UML для разработки вашей базы данных. Дополнительная информация здесь: http://www.orm.net/

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

3

Объектное ролевое моделирование было изобретено командой Control Data около 1973 года и названо Falkenberg. Это метод моделирования, основанный на лингвистическом анализе и формализованный в качестве логики первого порядка Терри Хальпина, см. http://orm.net. Таким образом, ORM является оригиналом пользователь аббревиатуры. ORM и родственные языки моделирования отличаются без атрибутов. Эти языки содержат только объекты и типы объектов (виды вещей), факты и типы фактов (отношения между отдельными вещами) и ограничения (правила о том, какие вещи и отношения могут существовать). Никакие отношения не имеют характеристику ведущий-ведомый, такой как сущность-атрибут, - это понятие, которое возникает только во время физического сопоставления, поскольку оно не имеет отношения к основной семантике домена.

Объектное реляционное сопоставление (которое я всегда пишу O/RM) - это имя метода или семейства инструментов, которые помогают переводить данные между реляционной формой и объектно-ориентированной формой. Обе эти формы используют агрегированные или составные вещи на основе атрибутов (сущность/атрибут или объект/атрибут), но принципы агрегирования различаются между двумя подходами, поэтому одна и та же основная семантика приводит к разным структурам данных; следовательно, необходимы инструменты для автоматизации перевода. Кроме того, при анализе ER или O-O необходимость принятия ранних решений о том, какие объекты являются объектами/объектами и которые являются атрибутами, принудительно, и это приводит к возникновению целого класса ошибок моделирования, которые просто не встречаются с ORM.

Конечно, как реляционные, так и o-o модели могут быть автоматически получены из ORM-модели, а отображение между производными формами также является автоматическим и безболезненным. Полагаю, это не делается чаще, потому что это облегчит жизнь.

Смежные вопросы