Top Qs
Chronologie
Chat
Contexte
Data mapper
De Wikipédia, l'encyclopédie libre
Remove ads
En génie logiciel, le data mapper est un modèle architectural, nommé par Martin Fowler dans son livre de 2003 Patterns of Enterprise Application Architecture[1]. L'interface d'un objet conforme à ce modèle inclut des fonctions telles que Créer, Lire, Mettre à jour et Supprimer (CRUD), qui opèrent sur des objets qui représentent des types d'entités de domaine dans un magasin de données.
Un data mapper est une couche d'accès aux données qui effectue le transfert bidirectionnel de données entre un stockage de données persistant (souvent une base de données relationnelle) et une représentation de données en mémoire (la couche domaine). L'objectif de ce modèle est de maintenir l'indépendance entre la représentation en mémoire et le stockage de données persistant, ainsi qu'avec le data mapper lui-même. Ceci est utile lorsqu'il est nécessaire de modéliser et d'appliquer des processus métier stricts aux données de la couche domaine qui ne sont pas correctement mappées au stockage de données persistant[2]. La couche est composée d'un ou plusieurs objets d'accès aux données, effectuant le transfert de données. Les implémentations de ces objets varient en portée. Les génériques gèrent de nombreux types d'entités de domaine différents, alors que les dédiés en gèrent un ou plusieurs.
Sa principale alternative est active record.
Remove ads
Implémentations
Des implémentations du concept peuvent être trouvées dans divers frameworks pour de nombreux environnements de programmation.
Java / .NET
Node.js / TypeScript
PHP
- Atlas ORM[10] (data mapper, passerelle de données de table, générateur de requêtes et wrapper PDO)[11]
- Doctrine : Mapping objet-relationnel (ORM) et la couche d'abstraction de base de données[12]
- Cycle ORM[13] (PHP DataMapper ORM et moteur de modélisation de données)[14]
- CakePHP ORM[15] (PHP DataMapper ORM, générateur de requêtes et wrapper PDO)
Perl
Python
- Bibliothèque SQLAlchemy
- bibliothèque mincePy[18]
Ruby
Elixir
- Framework de persistance Ecto[21]
Remove ads
Références
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads