Java et J2EE >> Gestion des données avec Linq

Transcription

Java et J2EE >> Gestion des données avec Linq
Java et J2EE >> Gestion des données avec Linq
Référence : LINQ
Durée : 3 jours
Le traitement des données et leur persistance est un sujet à lui tout seul. Microsoft nous propose une approche unique du problème, faisant intervenir
des extensions du langage C# : ainsi la programmation devient déclarative. Le travail sur les données se fait grâce à des extensions LINQ (Language
INtegrated Query) utilisables quelle que soit la provenance des données : objets et collections en mémoire, documents XML ou bien bases de
données relationnelles. Ce cours vous propose une revue des extensions du langage C#, en mettant en valeur les Delegates et les Lambda
Expressions. Dans un deuxième temps, ces extensions sont utilisées successivement sur les différentes sortes de données généralement trouvées en
entreprise. On se penche ensuite sur les mécanismes qui sous-tendent la manipulation déclarative des requêtes en vue de créer des applications
performantes. Ce cours répond aux questions suivantes : "Pourquoi Linq ?", "Quels gains espérer à l'utilisation de cette nouvelle brique du Framework
?", "Comment puis-je intégrer cette technologie à mes applications existantes ?".
Vous allez apprendre à :
• Connaître ADO.NET et ses limites
• Comprendre la sérialisation en XML
• Mettre en oeuvre le mapping objet / relationnel avec .Net 3
• Différencier les utilisations possibles de Linq
• Connaître les extensions C# pour Linq
• Gérer les transactions et la concurrence d'accès
Méthode pédagogique :
70% de travaux pratiques
Audience :
Développeurs objet expérimentés
Pré-requis :
Connaissance de C# et du Framework .Net 1.1 ou 2.0 ou avoir suivi le cours ICOP
Programme :
Gestion des données avec ADO.NET
• Rappels sur les bases de données relationnelles
• Le modèle de programmation ADO.NET
• Les modes connecté et déconnecté
• Les transactions
La sérialisation des données avec XML
• Le mapping XML / Objet
• Rendre une classe XmlSerialisable
• La sérialisation par défaut
• Définition de la sérialisation nominale
• Contrôle personnalisé de la sérialisation nominale
• Le mapping XML / Relationnel
• Utilisation du Dataset
Les extensions de langage C#
• Delegate
• Lambda Expressions
• Les méthodes d'extension
• Opérateurs de requête
• Arbres d'expression
Introduction à Linq
• Pourquoi Linq ?
• Linq sur des collections
• Linq sur des documents XML
• Linq sur des données relationelles
• Intégrer Linq dans des applications Windows Forms
• Intégrer Linq dans des applications Web
Linq et les objets
• Rappels sur les collections et les interfaces utiles
• Interroger un objet
• Tri et filtre sur une collection
• Les opérations : projection, restriction, jointure, concaténation, etc.
• Impact sur les performances
Linq et les documents XML
• Les classes du modèle de programmation pour XML
• Interroger un document XML
• Transformer un document XML
• Créer un document XML
Linq et les données relationnelles
• Les classes, interfaces et attributs du modèle de programmation
• Génération du mapping DDL / objet : SqlMetal
• Le fonctionnement de l'exécution différée des requêtes
• Le tri et le groupage des données
• L'agrégation et la jointure
• Mise à jour de la base de données
• Gestion de la concurrence d'accès
• Optimisation des performances : chargement retardé, compilation des requêtes