Почему Быстрый NHibernate против hbm XML-файлов?

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

С моей точки зрения, когда я сначала работал с NHibernate, я использовал интерфейс Fluent, но столкнулся с некоторыми контрольно-пропускными пунктами и был нелегко находить соответствующую документацию для интерфейса Fluent для чего-либо вне 'игрушечного приложения', таким образом, я учился обращаться с ними через XML.

Со временем я понял, что сделал большую часть своей работы над стороной XML и понял, что это не было столь ужасающе, как я думал, что это будет. Таким образом для меня лично, это был случай плохой документации и не наблюдения значительные сбережения в кодировании времени.

Однако может быть некоторое огромное преимущество/недостаток, которое я пропускаю, и я действительно хотел бы услышать некоторые мнения от людей, у которых есть больше опыта в работе с этими инструментами.

12
задан Bob Palmer 22 January 2010 в 12:51
поделиться

4 ответа

Безопасность при компиляции и рефакторинг (переименование классов, свойств) являются одним из преимуществ, которые вы получаете от беглого отображения. Использование одного языка (C# или VB.NET) для написания связок, программного кода и доступа к данным является еще одним преимуществом.

16
ответ дан 2 December 2019 в 05:40
поделиться
  • Название времени комбинирования - и тип безопасности
  • Intellisense, чтобы показать вам, какие свободные методы доступны в любой точке
  • Настраиваемые значения по умолчанию
  • Automatper
6
ответ дан 2 December 2019 в 05:40
поделиться

Для меня большая особенность в свободном состоянии - это автомат.

Я могу определить мою модель домена, используя классы Poco, (в основном), не беспокоясь о противных деталях того, как они будут сопоставлены на таблицы в реляционной базе данных.

Долгое время разработчика OO, а также случайное разработчик БД, я намного удобнее проектироваться в моде OO. Я также верю, что это позволяет мне работать на более высоком более мощном уровне абстракции.

Автоматизация также делает постоянные изменения в доменную модель гораздо менее пугающим.

Ваши клиенты только что сказали вам в последнюю минуту, они хотят добавить четыре новых столбца в базу данных?

Нет проблем - добавьте четыре новых свойства в связанный Poco (4 строки кода), и перенасите.

принимает много боли из постоянно меняющихся требований, которые являются фактом жизни на многих проектах.

3
ответ дан 2 December 2019 в 05:40
поделиться

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

Но продукт превратился в довольно большой инструмент. Это симпатичная функция полной по сравнению с XML и предоставляет все преимущества, другие уже изложили.

0
ответ дан 2 December 2019 в 05:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: