🗊Презентация ORM, NHibernate и Dapper

Нажмите для полного просмотра!
ORM, NHibernate и Dapper, слайд №1ORM, NHibernate и Dapper, слайд №2ORM, NHibernate и Dapper, слайд №3ORM, NHibernate и Dapper, слайд №4ORM, NHibernate и Dapper, слайд №5ORM, NHibernate и Dapper, слайд №6ORM, NHibernate и Dapper, слайд №7ORM, NHibernate и Dapper, слайд №8ORM, NHibernate и Dapper, слайд №9

Вы можете ознакомиться и скачать презентацию на тему ORM, NHibernate и Dapper. Доклад-сообщение содержит 9 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





ORM, NHibernate и Dapper
Описание слайда:
ORM, NHibernate и Dapper

Слайд 2





ORM
ORM – object-relational mapping – объектно-реляционное отображение.
Чаще всего данные хранятся в базе данных.
Но в коде хочется оперировать объектами.
ORM берет на себя заботы об отображении таблиц в объекты и наоборот.
ORM следит за объектами, умеет сохранять их изменения, создавать новые, читать из базы старые, удалять записи (то есть выполняет полный CRUD)
Описание слайда:
ORM ORM – object-relational mapping – объектно-реляционное отображение. Чаще всего данные хранятся в базе данных. Но в коде хочется оперировать объектами. ORM берет на себя заботы об отображении таблиц в объекты и наоборот. ORM следит за объектами, умеет сохранять их изменения, создавать новые, читать из базы старые, удалять записи (то есть выполняет полный CRUD)

Слайд 3





А нельзя обойтись без этого?
Можно. Но наличие ORM в проекте существенно облегчает операции CUD (про Read – чуть позже).
Само собой, дополнительные накладные расходы => жертвуем скоростью.
Много рефлексии => ещё жертвуем скоростью.
Но пользы от ORM довольно много: некоторые из них умеют неплохо работать с каскадами и сами могут создавать (а некоторые и обновлять) схемы БД.
Описание слайда:
А нельзя обойтись без этого? Можно. Но наличие ORM в проекте существенно облегчает операции CUD (про Read – чуть позже). Само собой, дополнительные накладные расходы => жертвуем скоростью. Много рефлексии => ещё жертвуем скоростью. Но пользы от ORM довольно много: некоторые из них умеют неплохо работать с каскадами и сами могут создавать (а некоторые и обновлять) схемы БД.

Слайд 4





Почему NH, а не EF?
В DDD нужно разделять различные уровни. Уровень работы с БД, само собой, должен быть выше уровня домена.
NH позволяет естественно отделять домен.
При использовании EF приходится учитывать его особенности при разработке домена.
NH хорошо работает и естественно работает с каскадами.
В EF требуется каскады подтягивать (и удалять) самому.
Описание слайда:
Почему NH, а не EF? В DDD нужно разделять различные уровни. Уровень работы с БД, само собой, должен быть выше уровня домена. NH позволяет естественно отделять домен. При использовании EF приходится учитывать его особенности при разработке домена. NH хорошо работает и естественно работает с каскадами. В EF требуется каскады подтягивать (и удалять) самому.

Слайд 5





NHibernate
Изначально был портирован с Hibernate’а от Java.
Изначально все маппинги хранились в страшных XML-файлах.
При его использовании можно испытывать сильнейшие БОЛИ.
Описание слайда:
NHibernate Изначально был портирован с Hibernate’а от Java. Изначально все маппинги хранились в страшных XML-файлах. При его использовании можно испытывать сильнейшие БОЛИ.

Слайд 6





FluentNHibernate
Конфигуратор для NHibernate.
Позволяет довольно простым кодом регистрировать маппинги (без XML’а!).
Поддерживает так называемые конвенции, по которым будут именоваться таблицы и поля схемы БД.
Рассмотрим использование NH с FluentNH в рамках какого-нибудь простенького проекта.
Описание слайда:
FluentNHibernate Конфигуратор для NHibernate. Позволяет довольно простым кодом регистрировать маппинги (без XML’а!). Поддерживает так называемые конвенции, по которым будут именоваться таблицы и поля схемы БД. Рассмотрим использование NH с FluentNH в рамках какого-нибудь простенького проекта.

Слайд 7





Сравнительная таблица NH и массажистки
Описание слайда:
Сравнительная таблица NH и массажистки

Слайд 8





Слой чтения – больное место NH
NHibernate ОЧЕНЬ плохо подходит для задач составления сложных запросов через LINQ. В таких случаях проще писать plain-sql.
Но тут возникает еще одна проблема: а во что (а еще очень часто – как?) маппить результат?
Описание слайда:
Слой чтения – больное место NH NHibernate ОЧЕНЬ плохо подходит для задач составления сложных запросов через LINQ. В таких случаях проще писать plain-sql. Но тут возникает еще одна проблема: а во что (а еще очень часто – как?) маппить результат?

Слайд 9





Лечим боли с помощью Dapper
Dapper – micro ORM от ребят, которые сделали StackOverflow (и на котором он собственно и работает).
Предоставляет несколько расширений для IDbConnection, которые позволяют маппить результаты SQL-запроса в классы.
IL-код мапперов формируется в рантайме и кэшируется – хороший прирост к скорости!
Описание слайда:
Лечим боли с помощью Dapper Dapper – micro ORM от ребят, которые сделали StackOverflow (и на котором он собственно и работает). Предоставляет несколько расширений для IDbConnection, которые позволяют маппить результаты SQL-запроса в классы. IL-код мапперов формируется в рантайме и кэшируется – хороший прирост к скорости!



Похожие презентации
Mypresentation.ru
Загрузить презентацию