Quelle est la différence entre DAL et DAO?
-
23-08-2019 - |
Question
Après avoir étudié Java à l'école, je suis assez familier avec le DAO-motif ( objet d'accès aux données ). Cependant au travail que j'utilise .NET. Dans .NET, on parle souvent de la DAL ( d'accès aux données couche ). Pour moi, leur but semble tout à fait similaire. La question est donc sont DAO et DAL essentiellement la même chose? Est-ce le terme DAL constitué uniquement de sorte qu'il ne serait pas mêlé à ?
La solution
L'accès aux données couche (DAL) est la couche d'un système qui existe entre la couche logique métier et la couche persistance / stockage. Un DAL est peut-être une seule classe, ou il peut être composé de plusieurs objets d'accès aux données (DAOS). Il peut avoir une façade sur la partie supérieure de la couche d'affaires pour parler, en se cachant la complexité de la logique d'accès aux données. Il pourrait être un outil de mapping objet-relationnel tiers (ORM), tels que Hibernate.
DAL est un terme architectural, OTI sont un détail de conception.
Autres conseils
Une couche d'accès aux données contiendra de nombreux objets d'accès aux données.
Il est le rôle principal est de découpler la logique métier de la logique de base de données et la mise en œuvre.
Par exemple, le DAL peut avoir une seule méthode qui permet de récupérer des données à partir de plusieurs tables, requêtes ou procédures stockées via un ou plusieurs objets d'accès aux données.
Les modifications apportées à la structure de base de données, OTI, procédures stockées ou même type de base de données ne doivent pas engager des changements à la logique métier et cela est en baisse au découplage prévu par le DAL.