1 / 46

Microsoft Academic Tour 2008 Visual Studio 2008 et le framework .NET 3.5

Microsoft Academic Tour 2008 Visual Studio 2008 et le framework .NET 3.5. Didier Danse http://didierdanse.net. Agenda. Historique de .NET et de Visual Studio Présentation du Framework 3.5 Visual Studio 2008: Nouveautés majeures Apports de C# 3.0 et VB 9.0 LINQ

griffith
Download Presentation

Microsoft Academic Tour 2008 Visual Studio 2008 et le framework .NET 3.5

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Microsoft Academic Tour 2008Visual Studio 2008 et le framework .NET 3.5 Didier Dansehttp://didierdanse.net

  2. Agenda • Historique de .NET et de Visual Studio • Présentation du Framework 3.5 • Visual Studio 2008: Nouveautés majeures • Apports de C# 3.0 et VB 9.0 • LINQ • Visual Studio 2008: Développement Web • Visual Studio 2008: Développement Windows • Visual Studio 2008: Développement Office

  3. .NET Présentation du Framework 3.5 C# 3.0 VB.NET 9.0 C# 1.0 VB.NET 7.0 C# 1.1 VB.NET 7.1 C# 2.0 VB.NET 8.0

  4. .NET 3.5 et Visual Studio 2008 Vueglobale

  5. .NET 3.5 et Visual Studio 2008 Vueglobale

  6. Visual Studio 2008 Les nouveautésmajeures • Support des versions du Framework .NET 2.0, 3.0 et 3.5 • Modèle de projet et méthode de compilation inchangés • Permet aux entreprises d’utiliser Visual Studio 2008 sans pour autant mettre à jour le code source • Une solution Visual Studio peut contenir des projets ayant pour cible des versions différentes du Framework

  7. Visual Studio 2008 Les nouveautés • Gestion du cycle de vie d’une application • Interaction avec Team Foundation Server 2005 et 2008 • Designers • Tests unitaires et couverture de code • Analyse du code et de la performance • Outils pour les développeurs de base de données • … • Support amélioré du développement Web • JavaScript IntelliSense et Debugging • CSS

  8. Demo Vue d’ensemble de Visual Studio 2008

  9. .NET Apports C# 3.0 et VB.NET 9.0

  10. Apports C# 3.0 et VB 9.0 Les besoins pour LINQ Query expressions • var contacts = • from c in customers • wherec.State = « WA » • select new { c.Name, c.Phone }; Inférence de type Expressions lambda • var contacts = • customers • .Where (c => c.State == « WA ») • .Select (c => new { c.Name, c.Phone }); Initialisation simplifiée Méthodes d’extension Types anonymes

  11. Apports C# 3.0 et VB 9.0 Propriétésautomatiques • class Ecole • { • private string _nom; • public string Nom • { • get { return _nom; } • set { _nom = value; } • } • } • Ecriture simplifiée des propriétés • class Ecole • { • public string Nom { get ; set ; } • }

  12. Apports C# 3.0 et VB 9.0 Initialisationd’objetssimplifiée • En C# 2.0 et VB 8.0 • Définition de l’objet • Instanciation de l’objet et set des propriétés • public class Ecole • { • public string Nom ; • public intNombreEtudiants ; • } • Instanciation de l’objet et set des propriétés • Ecole hepl = new Ecole(); • hepl.Nom = « Haute Ecole Province Liège »; • hepl.NombreEtudiants = 500;

  13. Apports C# 3.0 et VB 9.0 Initialisationd’objetssimplifiée • En C# 3.0 ou VB 9.0 • Initialisez votre objet comme vous le souhaitez • Ecole hepl = new Ecole() { Nom = « HEPL », NombreEtudiants = 500 }; • Combinaison constructeur / initialisation simplifiée • Attention l’initialisation simplifiée est effectuée après le constructeur • Ecole hepl = new Ecole(« HEPL ») { NombreEtudiants = 500 }; • Ecole hers = new Ecole(« HERS ») { Nom = « HEPL » }; • Console.WriteLine(hers.Nom); // Résultat = HEPL IntelliSense actif

  14. Apports C# 3.0 et VB 9.0Initialisation de collections simplifiée • List<Participant> lst = new List<Participant> (); • lst.Add(new Participant (« Didier », 26)); • lst.Add(new Participant (« Walter »)); • lst.Add(new Participant (« Alfonso »)); • En C# 2.0 et VB 8.0 • En C# 3.0 et VB 9.0 • List<Participant> lst = new List<Participant> {      new Participant { Prenom = “Didier",  Age = 26 },      new Participant { Prenom = “Walter” },      new Participant { Prenom = “Alfonso” }   };

  15. Demo Propriétés automatiquesInitialisation d’objetsInitialisation de collections

  16. Apports C# 3.0 et VB 9.0 Inférence de type • Détection du type de sortie d’une fonction par analyse des types fournis en entrée et des opérations effectuées sur ceux-ci • Fortement typé • En VB, nécessite « Option Infer On » (actif par défaut) • Dim speaker = « Didier Danse » • var speaker = « Didier Danse »;

  17. Apports C# 3.0 et VB 9.0 Types anonymes • Création d’objets sans écrire de définition de classe • Classe générée par le compilateur • Intitulé « anonyme » car on ne connait pas le type • var speaker = new { Nom = « Didier Danse », Employeur = « Acane Consulting » }; • Dim speaker = New With { .Nom = « Didier Danse », .Employeur = « Acane Consulting » } • var msdnSession = new { Date = DateTime.Now.Date, NomSpeaker = speaker.Nom };

  18. Apports C# 3.0 et VB 9.0Méthodesd’extension • Comment ajouter une fonction ou méthode à une classe dont on a pas le code source? • Héritage de la classe de base (si applicable) • Solution généralement mise en place avec C# 2.0 et VB 8.0 • public class Util • { • public static string NomComplet(Speaker speaker, string titre) • { • return titre + « » + speaker.Nom + «  » + speaker.Prenom; • } • } • Console.WriteLine(Util.NomComplet(speaker, « Mr »));

  19. Apports C# 3.0 et VB 9.0Méthodesd’extension • Ajout de fonctionnalités personnalisées aux types de données déjà définis sans créer de type dérivé • Utilisation de l’attribut « Extension » en VB et « this » en C# • Le premier paramètre est le type à étendre • public class Util { • public string NomComplet (this Speaker speaker, string titre) { • return titre + «  » + speaker.Nom + «  » + speaker.Prenom; • } • } • Console.WriteLine(speaker.NomComplet(« Mr »));

  20. Apports C# 3.0 et VB 9.0 Types nullables • Permet d’éviter d’utiliser des valeurs « dummies » • 3 syntaxes différentes • Ne peut être utilisé avec un type « référence » (String, classe, …) • ‘Dim val? As Integer • Dim val As Integer? • ‘Dim val As Nullable(Of Integer) • If Val.HasValueThen • Console.WriteLine(val.Value) • Else • Console.WriteLine(« pas de valeur ») • End If • bool? b;

  21. Apports C# 3.0 et VB 9.0 Expressions lambda • Fonction • Sans nom • Retourne une valeur unique • IEnumerable<Participant> results = • participants.Where ( p => p.EstEtudiant == true ); • Utilisé par LINQ avec Where, Select, OrderBy, …

  22. Demo Type anonymeMéthode d’extensionType nullableExpressions lambda

  23. .NET Présentation du Framework 3.5 LINQ C# 3.0 VB.NET 9.0 C# 1.0 VB.NET 7.0 C# 1.1 VB.NET 7.1 C# 2.0 VB.NET 8.0

  24. LINQ Architecture Visual C# Visual Basic Others .Net Language Integrated Query (LINQ) LINQ-enabled data sources LINQ-enabled ADO.NET LINQ To SQL LINQ To Datasets LINQ To XML LINQ To Entities LINQ To Objects <book> <title/> <author/> <price/> </book> Databases Objects XML

  25. LINQGénéralités • Permet de faire des requêtes utilisant le même code quelle que soit la source • Introduction d’une syntaxe proche de SQL • Compilé en tant que C# traditionnel (grâce aux méthodes d’extension) • Syntaxe native • IntelliSense • Auto complétion • Fonctionne avec toute collection (IEnumerable<T>) • Utilise les expressions lambda

  26. Demo LINQ to Objects

  27. LINQ LINQ to SQL - DataContext

  28. Demo LINQ to SQL

  29. Demo Combinaison entre LINQ to Objects LINQ to SQL

  30. .NET 3.5 et Visual Studio 2008 Vueglobale

  31. ASP.NET 3.5Vueglobale des nouveautés • ASP.NET 3.5 • Microsoft Ajax Library • ListView, DataPage, LinqDataSource • Nouveautés de Visual Studio 2008 • Nouvel éditeur HTML • Partage avec Expression Web • Support du CSS et des Master Pages imbriquées • Affichage « Split View » • IntelliSense appliqué au JavaScript et Debugging du JavaScript

  32. ASP.NET 3.5 Vueglobale des nouveautés

  33. Demo JavaScript IntelliSenseDebugging JavaScriptSupport CSS

  34. .NET 3.5 et Visual Studio 2008 Vueglobale

  35. Visual Studio 2008 Applications Windows • Windows Forms • Amélioration de ClickOnce • Utilisation des services ASP.NET • Utilisation des services WCF en mode Partial Trust • Windows Presentation Foundation • XAML • Designer intégré dans Visual Studio • Déploiement de XBAP sur FireFox

  36. Demo Windows Presentation Foundation

  37. Visual Studio 2008 Applications pour mobiles • Support des Compact Framework 2.0 et 3.5 • Tests unitaires • LINQ • WCF • CLR Profiler • APIs Son • …

  38. .NET 3.5 et Visual Studio 2008 Vueglobale

  39. Visual Studio 2008 Workflow Foundation et Windows Communication Foundation • Windows Communication Foundation • HTTP sans utilisation de SOAP (sérialisation XML ou JSON) • Mise en place d’un framework de syndication • RSS • ATOM • Support du Partial Trust • Workflow Foundation • Envoi et réception vers/de services WCF • WorkflowServiceHost

  40. .NET 3.5 et Visual Studio 2008 Vueglobale

  41. Visual Studio 2008 Office Business Applications • Support des versions 2003 et 2007 • Customisation 2008 • Document • Application • Office Ribbon Designer • Outlook FormRegion Designer • Custom and Action Task Panes • Word Content Controls • Support de WF et de SharePoint

  42. .NET Présentation du Framework 3.5 C# 3.0 VB.NET 9.0 C# 1.0 VB.NET 7.0 C# 1.1 VB.NET 7.1 C# 2.0 VB.NET 8.0

  43. .NET 3.5Nouvelleslibrairies • System.Data.Linq • System.Xml.Linq • System.Data.DataSetExtensions • System.Web.Extensions • System.ServiceModel.Web • System.AddIn, System.AddIn.Contract • System.Windows.Presentation • System.Net • System.DirectoryServices.AccountManagement • System.Management.Instrumentation • …

  44. Visual Studio 2008, C# 3.0 et VB 9.0Resources • Visual Studio Team System 2008 Team Suite with Visual Studio Team System 2008 Team Foundation Server http://go.microsoft.com/?linkid=8048142 • Visual Studio 2008 Training Kit http://go.microsoft.com/?linkid=7602397 • Dev Center C# http://msdn2.microsoft.com/en-us/vcsharp/default.aspx • Dev Center VB.NET http://www.microsoft.com/france/msdn/vbasic/default.mspx

  45. Q&A Questions?

  46. Merci pour votre attention Blog: http://didierdanse.netEmail: didier.danse@acaneconsulting.com

More Related