C#3 et le projet Linq Mitsuru FURUTA

Slides:



Advertisements
Présentations similaires
REFERENTIEL DE LA SERIE STG
Advertisements

Applications N-Tiers Rappels: architecture et méthodologie
Mathilde VINCENT - Olivier JOURDAN Paris - le 7/2/2012
Pierre Lagarde Relation technique développeur Grégory Renard [Rédo] Responsable Développement Wygwam.
Windows Presentation Foundation avancé – Partie 1
De Windows Forms à Windows Presentation Foundation
Linq, fonctionnement et architecture
XLinq Pierre Lagarde
Windows Presentation Foundation Mitsu Furuta DevDays 2006 Equipé aujourdhui, prêt pour demain.
C# 2.0, un an après Mitsuru FURUTA
Nouveautés pour les développeurs Office System Scott Burmester Responsable des programmes PSPS.
Rencontres Windows Forms
Bases de Données XML Natives
Introduction Fonctionnement PluginsConfigurationLes données Le framework MAG Framework de conception de canaux complexes Implémente IChannel Possède son.
Transformation de documents XML
Le langage de requêtes SPARQL SPARQL Protocol And RDF Query Language
19 septembre 2006 Tendances Logicielles IBM Rational Data Architect Un outil complet de modélisation et de conception pour SGBD Isabelle Claverie-Berge.
Object Management Architecture (OMA)
UML - Présentation.
Mitsuru FURUTA Relations techniques développeurs Microsoft France
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Cours 3: Base de donnée XML
Mitsuru FURUTA Relations techniques développeurs Microsoft France
XML-Family Web Services Description Language W.S.D.L.
UNIVERSITE CHOUAIB DOUKKALI Département des mathématiques
Introduction à Entity Framework
Présentation de Windows Presentation Foundation Vers une nouvelle génération dinterfaces graphiques.
Principes de persistance dans les applications orienté objet
Développement Rapide dApplications Web avec.NET « Mon premier site »
Xml/xslt : Extensible Stylesheet Language Transformation réalisé par: saÏd NAÏM.
Développement dapplication avec base de données Semaine 1 : Présentation dEntity Framework Automne 2013.
Projet JAVA EE Approfondi
UML F. Laperruque INRA – SAGA CATI SICPA.
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
Date.
Microsoft dot Net Extrait du cours. La programmation fenêtrée facile. Une approche objet. Philippe Garraud: Formateur indépendant.
22 Intéropérabilité Silverlight & PHP Le 8 février 2010 GIACOPINO Cyril Directeur pôle technologie TEQUILARAPIDO.
Mise en œuvre du langage MDX
Introduction au paradigme orienté-objet (suite)
Microsoft .NET.
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI) Plate-forme.NET.
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
Par Jonathan Barbosa Ingénieurs 2000 – IR 3 Xposé 2010 LINQ : Language-INtegrated Query.
NET LINQ, ADO Vnext, Orcas,… Pierre COUZY Stéphane GOUDEAU Architecte en Système d’information Division Plateformes et Ecosystème Microsoft France.
Entity Framework 4 Mitsuru FURUTA Relations techniques développeurs
Développement d’application avec base de données
DataBinding avancé Mitsuru FURUTA, relations techniques développeurs –
Transformation de modèles Kick Off Motor Jean Marc Jézéquel & Didier Vojtisek La vision Triskell : Umlaut NG.
Linq & les expressions lambda. L Language In Integrated Q Query.
UML.
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
22 Nouveautés de Visual Basic 2010 et les trucs et astuces de son IDE Sébastien Warin R&I Technical Lead Wygwam Microsoft MSP & MCPD
Cours techonologies .NET
Introduction à la plateforme .NET
RDA 209 : WPF Toolkit et bonnes pratiques
Le Langage SQL Introduction. 2 Historique du Langage SQL E. F. CODD : premiers articles dans les années 70 IBM crée le langage SEQUEL (Structured English.
1 Initiation aux bases de données et à la programmation événementielle Responsable : Souheib BAARIR. (le sujet de votre .
Module : Langage XML (21h)
22 Lag110 : Le développement SharePoint 2010 avec Visual Studio 2010 Mardi 9 février 2010 Frédéric Wickert Partner Technical Specialist Microsoft.
Eric Mittelette Mitsuru Furuta Microsoft France
22 Passez à la vitesse supérieure avec Visual Studio 2010 et le framework 4.0 en utilisant la Task Parallel Library 08/02/2010 Vincent Lainé MVP C# Refresh.
Linq = Language INtegrated Query DLinq = Database + Linq Appelé maintenant Linq to Data Xlinq = XML + Linq Appelé maintenant Linq to XML.
1 Applications d’entreprise avec.NET 4.0 et Silverlight 4 David Rousset Mitsuru Furuta
2 Alain METGE SOGETI
Préparé par : Marouane FELJA
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
Développement d’application avec base de données Semaine 2: Requête avec l’Entity Data Model Automne 2015.
LINQ. LINQ (Language-Integrated Query) est une nouveauté du.NET Framework 3.5 C’est le nom d’un ensemble de technologies basé sur l’intégration de fonctions.
Transcription de la présentation:

C#3 et le projet Linq Mitsuru FURUTA Relations techniques développeurs - Microsoft France mitsufu@microsoft.com – http://blogs.microsoft.fr/mitsufu Pierre LAGARDE Relations techniques développeurs - Microsoft France pierlag@microsoft.com

Rappels sur le framework .Net 2.0 Linq C#3 Pause XLinq DLinq Agenda Introduction Rappels sur le framework .Net 2.0 Linq C#3 Pause XLinq DLinq

Introduction: .Net Language Integrated Query Constat: la maturité des langages objets est atteinte dans l’industrie. Le prochain challenge sera de diminuer la complexité d’accès aux données non objet (principalement les bases de données relationnelles et le Xml). Les technologies actuelles sont multiples: sql, mapping objet-relationnel, DOM, XPath, XQuery, etc… Linq offre une approche d’accès aux données plus générale en ciblant n’importe quel type de source de données Linq exploite les dernières évolutions de C#3 pour mettre en place un tel mécanisme. Linq définit ainsi un standard qui pourra être étendu aux autres langages .Net tels que VB.NET.

Rappels sur le framework .Net 2.0 Générics Classes partielles Méthodes anonymes Délégués simplifiés Types Nullables Rappel sur les énumérations: yield return !!!

Demo Rappels framework 2.0

Dans un avenir proche Linq, DLinq et XLinq Objectifs Unifier l’accès aux données quelque soit sa source Langage de requête objet quelque soit sa provenance Les technologies Linq : langage de manipulation de données XLinq : extension spécifique de Linq pour le formalisme XML DLinq : extension spécifique de Linq pour les données SQL

Linq Les évolutions Query Expression Possibilité d’exprimer une requête directement dans le code Type inference Déduction à la compilation du type d’un objet Lambda expression Utilisation d’expression Lambda directement dans le code Extension methods Etendre une classe sans en dériver par AOP Anonymous type Construction d’objet sans définition de classe Object initializer Possibilité d’initialiser des données membres à l’initialisation Langages concernés C# v3 et VB.NET v9, mais spécifications ouvertes (C++, Delphi..)

Local variable type inference Dans un avenir proche Query expressions var contacts = from c in customers where c.State == "WA" select new { c.Name, c.Phone }; Local variable type inference Lambda expressions var contacts = customers .Where(c => c.State == "WA") .Select(c => new { c.Name, c.Phone }); Extension methods Anonymous types Object initializers

Demo Process démo

Déclarations explicites Initialisations Types anonymes Méthodes d’extension Expressions lambda

Demo Filter démo

Process démo 2ème Extensions de méthode Exécution différée Demo Process démo 2ème Extensions de méthode Exécution différée

Demo Sample query

DLinq L’accès aux données Les structures de données: Les requêtes DataContext Les requêtes de mise à jour Les structures de données: Les objets « entités » Mapping par attributs Le générateur, le designer Les requêtes L’arborescence d’expressions Un modèle ouvert et extensible

DLinq Helloworld Entity objects DataContext Mises à jour Relations Demo DLinq Helloworld Entity objects DataContext Mises à jour Relations

Expressions: visualiser l’arborescence Demo Expressions: visualiser l’arborescence

Expressions: créer dynamiquement ses expressions Demo Expressions: créer dynamiquement ses expressions

Nouveautés: Générateur/Designer Demo Nouveautés: Générateur/Designer

Demo Sample query