Шаблон преобразователя данных
В разработке программного обеспечения шаблон преобразователя данных является архитектурным шаблоном . Он был назван Мартином Фаулером в его книге «Шаблоны архитектуры корпоративных приложений» 2003 года . [1] Интерфейс объекта, соответствующего этому шаблону, будет включать в себя такие функции, как «Создать», «Чтение», «Обновить» и «Удалить», которые работают с объектами, представляющими типы сущностей домена в хранилище данных.
Data Mapper — это уровень доступа к данным , который выполняет двунаправленную передачу данных между постоянным хранилищем данных (часто реляционной базой данных ) и представлением данных в памяти (уровнем домена). Цель шаблона — сохранить представление в памяти и постоянное хранилище данных независимыми друг от друга и от самого преобразователя данных. Это полезно, когда необходимо смоделировать и обеспечить строгие бизнес-процессы для данных на уровне домена, которые не сопоставляются четко с постоянным хранилищем данных. [2] Уровень состоит из одного или нескольких картографов (или объектов доступа к данным ), выполняющих передачу данных. Реализации Mapper различаются по объему. Универсальные преобразователи будут обрабатывать множество различных типов объектов домена; специализированные картографы справятся с одним или несколькими.
Реализации
[ редактировать ]Реализации этой концепции можно найти в различных средах программирования.
Java/.NET
[ редактировать ]- MyBatis Структура сохранения
- Hibernate ( NHibernate ) Структура персистентности
Node.js/ТипСкрипт
[ редактировать ]- Bookshelf.js Библиотека
- TypeORM Библиотека
- Massive.js Библиотека
- Призма
- Objection.js Библиотека
- МикроОРМ библиотека
- LDkit Object Graph Mapper (OGM) для источников данных RDF
PHP
[ редактировать ]- Atlas ORM (сопоставитель данных, шлюз табличных данных, построитель запросов и оболочка PDO) [3]
- Реляционный преобразователь объектов Doctrine2 (ORM) и уровень абстракции базы данных [4]
- Цикл ORM (PHP DataMapper ORM и механизм моделирования данных) [5]
- CakePHP ORM (PHP DataMapper ORM, построитель запросов и оболочка PDO)
Перл
[ редактировать ]Питон
[ редактировать ]- SQLAlchemy библиотека
- mincePy библиотека
Руби
[ редактировать ]- Библиотека DataMapper (на самом деле эта библиотека реализовала шаблон проектирования Active Record, его преемник DataMapper 2 (теперь ROM ) был направлен на фактическую реализацию шаблона проектирования, в честь которого она была названа)
Эликсир
[ редактировать ]- экто Структура сохранения
См. также
[ редактировать ]- Шаблон активной записи - концепция разработки программного обеспечения
- Объектно-реляционное сопоставление — техника программирования.
Ссылки
[ редактировать ]- ^ Фаулер, Мартин (2003). Шаблоны архитектуры корпоративных приложений . Аддисон-Уэсли. ISBN 978-0-321-12742-6 .
- ^ «В чем разница между Active Record и Data Mapper?» .
- ^ «Атлас ОРМ – Атлас» .
- ^ «Doctrine2 и ActiveRecord – Doctrine2» . Доктрина2 . Архивировано из оригинала 21 июля 2013 г. Проверено 2 апреля 2013 г.
- ^ «Цикл ОРМ – Цикл» . Гитхаб .
- ^ «переполнение стека — DBIx» .