Section courante

A propos

Section administrative du site

Data Mapper

Le Data Mapper est un patron de conception spécialisé dans la gestion des données, permettant de séparer la logique métier de la logique de persistance des données. Dans ce modèle, le Data Mapper est responsable de la conversion entre les objets métiers (modèles d'application) et les tables de la base de données. Ce patron aide à garder les objets métiers indépendants de la structure de la base de données, ce qui facilite la maintenance et l'évolution de l'application.

Caractéristiques du Data Mapper

Avantages

Inconvénients

Exemples de Data Mapper

Le Data Mapper est souvent implémenté dans les cadres d'applications et bibliothèques de gestion de données, notamment :

Exemple Simplifié en Pseudo-Code

Voici un exemple simplifié de Data Mapper en pseudo-code écrit en Free Pascal, où un objet métier Product est géré par un Data Mapper ProductMapper :

  1.  { Objet métier représentant un produit }
  2. Type
  3.   TProduct=Class
  4.    Id:Integer;
  5.    Name:String;
  6.    Price:Double;
  7.   End;
  8.  
  9.  { Interface du Data Mapper pour le produit }
  10. Type
  11.  IProductMapper=Interface
  12.   Procedure Save(product: TProduct);
  13.   Function Load(id:Integer):TProduct;
  14.  End;
  15.  
  16.  { Implémentation du Data Mapper }
  17. Type
  18.  TProductMapper=Class(TInterfacedObject,IProductMapper)
  19.   Procedure Save(Product:TProduct);
  20.   Function Load(id:Integer):TProduct;
  21.  End;
  22.  
  23. Procedure TProductMapper.Save(Product:TProduct);Begin
  24.  { Code pour sauvegarder l'objet produit dans la base de données }
  25. End;
  26.  
  27. Function TProductMapper.Load(id:Integer):TProduct;Begin
  28.  { Code pour récupérer un produit de la base de données en fonction de l'ID }
  29. End;

Dans cet exemple, l'objet TProduct contient uniquement des données métier et aucune logique de persistance. La classe TProductMapper gère la persistance et agit comme intermédiaire entre l'objet et la base de données.

Dernière mise à jour : Vendredi, le 1er novembre 2024