Rambler's Top100
"Knowledge itself is power"
F.Bacon
Поиск | Карта сайта | Помощь | О проекте | ТТХ  
 Базарная площадь
  
О разделе

Основная страница

Группы обсуждений


Тематический каталог обсуждений

Архив

 
 К н и г и
 
Книжная полка
 
 
Библиотека
 
  
  
 


Поиск
 
Поиск по КС
Поиск в статьях
Яndex© + Google©
Поиск книг

 
  
Тематический каталог
Все манускрипты

 
  
Карта VCL
ОШИБКИ
Сообщения системы

 
Форумы
 
Круглый стол
Новые вопросы

 
  
Базарная площадь
Городская площадь

 
   
С Л С

 
Летопись
 
Королевские Хроники
Рыцарский Зал
Глас народа!

 
  
ТТХ
Конкурсы
Королевская клюква

 
Разделы
 
Hello, World!
Лицей

Квинтана

 
  
Сокровищница
Подземелье Магов
Подводные камни
Свитки

 
  
Школа ОБЕРОНА

 
  
Арсенальная башня
Фолианты
Полигон

 
  
Книга Песка
Дальние земли

 
  
АРХИВЫ

 
 

Сейчас на сайте присутствуют:
 
  
 
Во Флориде и в Королевстве сейчас  12:43[Войти] | [Зарегистрироваться]
Обсуждение темы:
OR/M - Object Relational Mapping

Здравствуйте. Хочу предложить новую тему для обсуждения: OR/M - Object Relational Mapping. Это такая категория программных продуктов, которая предназначена для построения обьектной модели поверх реляционной.
Для того чтобы сократить количество кода, необходимого для работы с базой данных, и повысить его качество, читабельность, легкость.
С переходом Дельфи на платформу дотнет, дельфистам стала доступна целая когорта таких продуктов. Здесь есть и простенькие кодогенераторы, и мощные тяжелые продуты, поддерживающие полный reverse engineering. Есть бесплатные, есть дешевые (50-100 долларов), есть дорогие (несколько тысяч). Функциональность продуктов и их вохможности разбросаны по весьма широкой шкале. Короче есть от чего впасть в ступор. Какой ORM лучше подходит для Вас ? Кодогенератор ? или динамический ? Поддерживающий одну базу данных (SQL Server) или несколько ? У кого лучше документация ? У кого более эффективный код ? Стоит ли ждать ObjectSpaces от МС ?

Для ознакомления с темой предлагаю линки на несколько довольно известных, полноценных и бесплатных ORM движков

Вагиф Ахвердиев aka Jack Of Shadows

Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру


Всего в теме 305 сообщений

Добавить свое сообщение
Ссылки на несколько довольно известных, полноценных и бесплатных ORM движков
  1. NHibernate - http://nhibernate.sourceforge.net
  2. Neo - http://neo.codehaus.org
  3. NPersist - http://www.npersist.com
  4. Gentle.NET - http://www.mertner.com/projects/gentle
  5. MyGeneration - http://www.mygenerationsoftware.com



Отслеживать это обсуждение
305—296 | 295—286 | ...>>>
Всего сообщений в теме: 305; страниц: 31; текущая страница: 1


№ 305   01-11-2006 15:43 Ответить на это сообщение Ответить на это сообщение с цитированием
db4o уже в версии 5.7
Скорость обработки запросов выросла в сотни раз.
Существенно уменьшена потребность в оперативной памяти.
Реализована новая версия б-деревьей для индексов, что также улучшило скорость обработки запросов.
Существенно увеличена скорось записи данных в базу (даже с "короткими" транзакциями).
Ведется разработка в направлении улучшения характеристик клиент - серверной версии СУБД.
Появились средства администрирования СУБД. В т.ч. и в виде плагинов для Eclipse.
Реализована возможность включения процедур, реализующих коллбэк - вызовы на серверной стороне (естественно, все это на "родном" языке - Java или .Net(C#, Delphi for .Net etc)). Реализация похода на орагнизацию обработки событий в Дельфи.
Расширен язык для Native Query.
...
Пожалуй, что для дельфистов будет интересна версия db4o for .Net.
Все это можно бесплатно загрузить на db4o.com


№ 304   29-03-2006 02:18 Ответить на это сообщение Ответить на это сообщение с цитированием
http://www.instantobjects.org/

ОРМ на дельфи.
Основное достоинство - работает и на Дельфи 7
Классы правда нужно наследовать с их собственного базового класса TInstantObject

Но зато куча визуальных фишек для представления модели.
И даже есть DataSet, при помощи которого контейнер обьектов мапится на все обычные db-aware эдит боксы и гриды.

Т.е. скрещено привычное для дельфистов парадигма дб-программирования dataset->datasource->grid
c обьектным (а не табличным) представлением данных.

OpenSource. С хорошей документацией, даже видео есть :)) и примеры. Нехило вобщем.


№ 303   27-11-2005 23:37 Ответить на это сообщение Ответить на это сообщение с цитированием
Для тех кому нравится визуальное моделирование.
Сразу 2 новости.

http://www.objectmapper.com/Home/Default.aspx

ObjectMapper это тулза предназначенная для генерации NHibernate мапинг фалов из структуры БД.
Поддерживает UML и reverse engineering.

Новсть заключается в том что ObjectMapper стал OpenSource и бесплатным.

2. http://andromda.org/

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



№ 302   28-10-2005 07:59 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 300« (Jack Of Shadows)
___________________________

Вы правы, лучше использовать боее громоздкий, но максимально адекватный пример, что я и сделал.
Оригинальный вариант
http://www.arbinada.com/modules.php?name=Content&pa=showpage&pid=82

Журнальный постараюсь изменить тоже, но это не только от меня зависит.

P.S. Ситуация на рынке меняеися быстро, статья в по части обзора "протухнет" через полгода-год.
Если у кого-нибудь появится желание внести в список ORM изменения/добавления - напишите мне на email или на форуме, я с удовольствием включу это в статью, а вас - в соавторы :)


№ 301   27-10-2005 19:52 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 299« (Сергей Тарасов)
___________________________
В общем, они все далеки от идеала, NHibernate тсзать "лучший из худших".

Определение "лучший из худших" подразумевает что есть еще и лушие.
Но поскольку я таковых не встречал, а вы не привели, то думаю это несправедливое принижение достоинств NHibernate.
Максимум что вы можете выдать против NHibernate это фомулировку "лучший из имеющихся".
А затем уже говорить о фундаментальной невозможности предоставить идеальное решение при исторически сложившихся обстоятельствах (широкое распространение RDBMS, отсутствие встроенных декларативных инструментов манипуляций списками в java и dotnet языках итд.)


№ 300   27-10-2005 19:46 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 298« (Сергей Тарасов)
___________________________
Для примера с записью в БД пришлось бы приводить более громоздкий код со связанными объектами.

О том и речь :))

Просто статья у вас называется "ORM: зачем это нужно?" А в ней вы показываете "ОРМ - когда оно не нужно" :)) Пример не соответствует задекларированной тематике.



№ 299   27-10-2005 19:25 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 295« (Jack Of Shadows)
___________________________

Я помню Сергей Тарасов высказывался не в пользу выбора NHibernate.
В общем, они все далеки от идеала, NHibernate тсзать "лучший из худших".
Но "У мэня нэт для вас других писатэлэй" (с) тов.Сталин


№ 298   27-10-2005 19:23 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 297« (Jack Of Shadows)
___________________________
Я с этим согласен, "...если ваша система осуществляет транзакционную обработку (OLTP)... - здесь преимущества использования ОРП наибольшие"

Для примера с записью в БД пришлось бы приводить более громоздкий код со связанными объектами. На создании/заполнении/сохранении одного объекта выигрыш также не слишком заметен - в ADO добавить строку, заполнить ячейки, сохранить (транзакция может быть в этом случае даже неявной).


№ 297   27-10-2005 11:46 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 296« (Сергей Тарасов)
___________________________
Сергей, в статье вы использовали пример с чтением данных.
Было бы гораздо лучше если бы вы взяли пример с записью в БД.
Там преимущества ОРМ выраженны гораздо четче.
Да вы и сами в статье сказали, если только читать да на вывод давать, то особой разницы нет.
А вот когда записывать в БД, управлять транзакционностью, делать проверку данных - вот здесь ОРМ делает огромную часть рутинной работы, и уменьшает код более чем на половину.



№ 296   27-10-2005 11:19 Ответить на это сообщение Ответить на это сообщение с цитированием
ОРП (ORM): зачем это нужно?
http://zdnet.ru/?ID=501129


305—296 | 295—286 | ...>>>
Всего сообщений в теме: 305; страниц: 31; текущая страница: 1


Добавить свое сообщение

Отслеживать это обсуждение

Дополнительная навигация:
Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру
  
Время на сайте: GMT минус 5 часов

Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
Функция может не работать в некоторых версиях броузеров.

Web hosting for this web site provided by DotNetPark (ASP.NET, SharePoint, MS SQL hosting)  
Software for IIS, Hyper-V, MS SQL. Tools for Windows server administrators. Server migration utilities  

 
© При использовании любых материалов «Королевства Delphi» необходимо указывать источник информации. Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
Все используемые на сайте торговые марки являются собственностью их производителей.

Яндекс цитирования