PRATIQUE TECHNOS .NET 
ADO.Net : une évolution en profondeur de la gestion de données
 
Les différences entre ADO et ADO.Net ne sont pas forcément perceptibles pour le développeur qui ne s'est pas encore penché sur .Net. Elles sont pourtant notables, et modifient la manière d'accéder aux bases de données. (25/09/2006)
  Forum

Réagissez dans les forums de JDN Développeurs

Les composants ADO (pour ActiveX Data Objects) renvoient à une technologie Microsoft d'accès à des sources de données externes. L'idée première est d'offrir une interface unifiée pour permettre à n'importe quel langage de programmation d'accéder à OLE DB, l'API d'accès uniforme à des bases de données (relationnelles ou non, SQL ou non). Pour des requêtes simples, ADO ne nécessite pas de connaissances SQL.

Lors du passage de son environnement de développement standard de Win32 à .Net, Microsoft a proposé ADO.Net, construit sur ADO mais présentant de nombreuses différences - de la même manière que VB.Net est plus un cousin éloigné de Visual Basic qu'un simple saut de version...

Pour commencer, là où ADO offrait un accès aux données via les composants COM, ADO.Net ne fonctionne que pour le système .Net, en se basant fortement sur XML et les données d'applications. ADO.Net profite également des leçons tirées d'ADO en matière d'interopérabilité et de tenue de charge.

Mais le fonctionnement même d'ADO a été revu pour son passage à .Net. Grâce à l'introduction d'un nouvel objet standard, le DataSet, chargé de créer une représentation en mémoire des données relationnelles, ADO.Net peut utiliser les données de manière déconnectée, là où ADO devait constamment rester connecté à la source. Le DataSet stocke sous forme XML les données nécessaires au traitement en cours, et n'accède à la source qu'en cas de besoin (chargement, sauvegarde, modification). Cet objet remplace donc avantageusement le RecordSet d'ADO.

Les fonctionnalités de RecordSet ont été réparties au sein de quatre objets principaux : DataSet pour la représentation en mémoire ; DataReader pour la lecture rapide des données ; DataAdapter pour réaliser la liaison entre DataSet et la source ; et Command, qui regroupe toutes les fonctionnalités de traitement explicite, notamment l'exécution de requêtes.

Mode déconnecté, abandon de RecordSet pour de nouveaux objets et méthodes, fonctionnement avec XML : tout cela modifie déjà considérablement la perception de l'outil. Par ailleurs, ADO.Net introduit de nombreux concepts inconnus à ADO : copie par lots, énumération des serveurs SQL actifs, traitement asynchrone, notifications serveur...

Pour résumer : les différences entre ADO et ADO.Net sont notables. Principale méthode d'accès aux données de l'univers Microsoft, l'apprentissage d'ADO.Net devient obligatoire si l'on veut être prêt pour la prochaine évolution du mode de développement Windows, basé sur .Net.

 
Xavier Borderie, JDN Développeurs
 
 
Accueil | Haut de page