Objet d'acces aux donnees

Objet d'acces aux donnees

Objet d'accès aux données

Un objet d'accès aux données (en Anglais Data Access Object ou DAO) est un patron de conception (c'est-à-dire un modèle pour concevoir une solution) utilisé dans les architectures logicielles objet.

Sommaire

Utilisation

Les objets en mémoire vive sont souvent liés à des données persistantes (stockées en base de données, dans des fichiers, dans des annuaires, etc.). Le modèle DAO propose de regrouper les accès aux données persistantes dans des classes à part, plutôt que de les disperser. Il s'agit surtout de ne pas écrire ces accès dans les classes "métier", qui ne seront modifiées que si les règles de gestion métier changent.

Ce modèle complète le vieux modèle MVC (Modèle - Vue - Contrôleur), qui préconise de séparer dans des classes différentes les problématiques :

  • des "vues" (charte graphique, ergonomie)
  • du "modèle" (cœur du métier)
  • des "contrôleurs" (tout le reste : l'enchaînement des vues, les autorisations d'accès, ...)

Avantages et inconvénients

L'utilisation de DAO permet de s'abstraire de la façon dont les données sont stockées au niveau des objets métier. Ainsi, le changement du mode de stockage ne remet pas en cause le reste de l'application. En effet, seules ces classes dites "techniques" seront à modifier (et donc à re-tester). Cette souplesse implique cependant un coût additionnel, dû à une plus grande complexité de mise en œuvre.

Exemple en Java

Une classe métier :

public class Client implements java.io.Serializable {
 
  private String name;public void setName(String name) {
    this.name=name;
  }
  public String getName() {
    return this.name;
  }// méthodes métier
  public void reglerFacture(int noFac){}}


Une classe technique :

public class DAOClient implements java.io.Serializable {
 
  // Recherche de clients par nom
  public List<Client> getByName(String name) {
    // accès au fichier ou à la table des clients
  }
  // Recherche d'un client par son identifiant
  public Client getById(int id) {}
  // Mise à jour des données d'un client}

Il est important que cette classe cache complètement d'où viennent les données : elle doit donc renvoyer des objets métier (et non un curseur, un enregistrement, …).


Une classe contrôleur :

public class GestionnaireClient {
 
  /* Objet d'accès aux données */
  private DAOClient daoClient =;
  ArrayList listeClients = daoClient.getByName("Untel");}

Types d'accès aux données

Il peut exister autant de types de DAO que de moyens de persistance des données.

Des bibliothèques logicielles sont d'ailleurs conçues spécifiquement pour prendre en charge ces aspects.

Liens externes

Ce document provient de « Objet d%27acc%C3%A8s aux donn%C3%A9es ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Objet d'acces aux donnees de Wikipédia en français (auteurs)

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • Objet d'accès aux données — Un objet d accès aux données (en Anglais Data Access Object ou DAO) est un patron de conception (c est à dire un modèle pour concevoir une solution) utilisé dans les architectures logicielles objet. Sommaire 1 Utilisation 2 Avantages et… …   Wikipédia en Français

  • Objet de transfert de données — Un objet de transfert de données (Data Transfer Object ou DTO en anglais) est un patron de conception utilisé dans les architectures logicielles objet. Son but est de simplifier les transferts de données entre les sous systèmes d une application… …   Wikipédia en Français

  • Commission d'accès aux documents administratifs — Créée en France par la loi n°78 753 du 17 juillet 1978, la Commission d accès aux documents administratifs (CADA) est une autorité administrative indépendante qui a pour objectif de faciliter et contrôler l accès des particuliers aux documents… …   Wikipédia en Français

  • Commission D'accès Aux Documents Administratifs — Créée en France par la loi n°78 753 du 17 juillet 1978, la Commission d accès aux documents administratifs (CADA) est une autorité administrative indépendante qui a pour objectif de faciliter et contrôler l accès des particuliers aux documents… …   Wikipédia en Français

  • Commission d'Accès aux Documents Administratifs — Créée en France par la loi n°78 753 du 17 juillet 1978, la Commission d accès aux documents administratifs (CADA) est une autorité administrative indépendante qui a pour objectif de faciliter et contrôler l accès des particuliers aux documents… …   Wikipédia en Français

  • Commission d'acces aux documents administratifs — Commission d accès aux documents administratifs Créée en France par la loi n°78 753 du 17 juillet 1978, la Commission d accès aux documents administratifs (CADA) est une autorité administrative indépendante qui a pour objectif de faciliter et… …   Wikipédia en Français

  • Système de gestion de base de données relationnel-objet — Un système de gestion de base de données est un ensemble de logiciels qui servent à manipuler des bases de données. Dans un système de gestion de base de données relationnel objet (SGBDRO) l information est représentée sous forme d objets comme… …   Wikipédia en Français

  • Données ouvertes — Carte des bases de données ouvertes du projet Linked Open Data en Septembre 2011 Une donnée ouverte (en anglais open data) est une information publique brute, qui a vocation à être librement accessible. La philosophie pratique de l open data… …   Wikipédia en Français

  • Accès oculaires — Programmation neuro linguistique La programmation neuro linguistique (PNL) est un ensemble de modèles et de techniques de développement personnel originaires des États Unis et destinées à améliorer la communication entre individus et à… …   Wikipédia en Français

  • Loi relative à l'informatique, aux fichiers et aux libertés du 6 janvier 1978 — Sur les autres projets Wikimedia : « Informatique et libertés », sur Wikinews (actualités libres) La loi n°78 17 relative à l informatique, aux fichiers et aux libertés du 6 janvier 1978 (plus connue sous le nom de loi… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”