Patrons de conception/Carte d'identité

Un livre de Wikilivres.
Patron de conception
Catégorie : EntrepriseArchitecture de source de données
Nom français : Carte d'identité
Nom anglais : Identity Map
Garantir que le chargement de chaque objet se fasse une seule fois en le conservant dans un dictionnaire permettant également la recherche d'objets.


Une carte d'identité garantit que chaque objet n'est chargé qu'une seule fois en conservant chaque objet chargé dans un dictionnaire. La référence aux objets se fait par recherche à l'aide du dictionnaire.

Le chargement d'objets à partir d'une base de données peut cause de grands problèmes : Si vous ne faites pas attention, vous pouvez charger les données du même enregistrement de base de données dans deux objets différents. Ensuite, lorsque vous les mettrez à jour, vous passerez un moment intéressant à écrire correctement les modifications dans la base de données.

Lié à cela, il y a un problème de performances évident. Si vous chargez les mêmes données plus d'une fois, vous encourez un coût élevé en appels à distance. Ainsi, ne pas charger deux fois les mêmes données ne contribue pas seulement à l'exactitude, mais peut également accélérer votre application.

Une carte d'identité conserve un enregistrement de tous les objets qui ont été lus à partir de la base de données dans une seule transaction commerciale. Chaque fois que vous voulez un objet, vous vérifiez d'abord la carte d'identité pour voir si vous l'avez déjà.