S'abonner :  Newsletters    Magazines
[ PROGRAMMATION ]
Linq, un langage universel pour .Net
Microsoft proposera bientôt un pont entre, d'un côté, les langages de développement tels que C# et Visual Basic, et, de l'autre, les langages de requête comme SQL et XPath.

Frédéric Bordage , 01 Informatique (n° 1829), le 30/09/2005 à 07h00

« Les développeurs rêvent tous d'un seul langage de programmation, intégrant les dimensions objet, relationnel et XML au sein d'une API et d'une syntaxe homogène. Nous l'avons réalisé avec Linq (Language Integrated Query) » , explique Anders Hejlsberg, à l'origine de ce projet chez Microsoft.

« Aujourd'hui, les développeurs sont des plombiers », poursuit celui qui est considéré comme le père de .Net. En plus de leur langage de programmation habituel ­ Visual Basic, C#, PHP, Java... ­, ils doivent utiliser le langage SQL pour interroger une base de données, XPath pour manipuler un document XML, etc. Aucun développeur ne maîtrisant parfaitement SQL et XPath avant des années de pratique, cette multiplication de syntaxes se traduit par une perte de productivité et des problèmes de performance, voire de stabilité des applications.

Linq revêt la forme d'une bibliothèque de fonctions, qui étend l'API du framework .Net pour que les développeurs manipulent les objets .Net, les données SQL et XML avec un seul jeu d'instructions unifiées. Plus besoin de jongler entre C#, SQL et XPath. Pour l'instant, seuls C# et Visual Basic sont supportés. Mais, à terme, les 23 langages de .Net le seront.

Trois API spécialisés

Microsoft a créé trois API différentes utilisant Linq : Standard Query Operators (SQO), DLinq, et XLinq. « SQO comporte toutes les fonctions, opérateurs et types de base pour manipuler les objets .Net en mémoire », résume Paul Vick, responsable de Visual Basic .Net chez Microsoft, et qui travaille en collaboration avec Anders Hejlsberg.

L'interrogation des bases de données relationnelles est assurée par le sous-ensemble DLinq. Il se charge du mapping relationnel-objet et remplace le projet Objectspaces, abandonné.

« Objectspaces était un outil de mapping objet-relationnel traditionnel fortement intégré à ADO.Net. DLinq propose, lui, une démarche très novatrice, qui touche à la structure même des langages. DLinq offrira une productivité supérieure », précise Alain Le Hégarat, responsable marketing plate-forme chez Microsoft France. L'intégration transparente au langage, la réduction des API, de même qu'un mapping largement simplifié sont des améliorations significatives.

Pour sa part, XLinq s'appuie sur les travaux menés par Microsoft Research, et connus sous les noms de code Cw (C Omega) et X#. « C'est le remplaçant de l'implémentation actuelle du DOM XML (modèle objet du format XML). Mais c'est également l'élément d'intégration du langage Linq dans ce modèle objet représenté par le namespace System.Xml », souligne Sébastien Ros, le directeur technique d'Evaluant, un éditeur français spécialisé dans les outils de mapping objet-relationnel.

Microsoft n'a pas encore annoncé officiellement de date de sortie pour cette technologie. Mais « Linq sera disponible sur les futures versions de Visual Studio, C# 3.0, et Visual Basic 9.0 », indique Alain le Hégarat.


> Logiciel : F-Secure
Internet Security 2010
Profitez de notre offre promotionnelle de - 20 %!

publicité
> Logiciel : Trend Micro
Internet Security
Une sécurité Internet maximale.

classement FAI
Retrouvez chaque semaine le classement des fournisseurs d'accès avec ip-label 1 Bouygues Telecom 2 Free 3 Orange > Plus de détails
offres d'emploi
> Securité :AVG Antivirus
Une protection contre les spywares, les rootkits et les sites web malveillants

Service 01net
Newsletters 01net
abonnez vous gratuitement !
  
01Informatique
01 INFORMATIQUE
L'hebdo de référence des décideurs informatiques.
Micro Hebdo
MICRO HEBDO
L'hebdo qui vous simplifie la micro
et Internet.
L'Ordinateur Individuel
L'ORDINATEUR INDIVIDUEL
Le mensuel informatique qui vous informe et vous conseille.
Tous droits réservés © 1999 - 2009 Internext - 01net.