Quoi de neuf dans le Microsoft Framework .NET ?

Un peu d'histoire, qu'elles sont les étapes importantes, les modifications apportées au .NET Framework de Microsoft. On me pose souvent cette question lorsque l'on me demande si j'ai déjà travaillé avec telle ou telle version du Framework.

Voici donc pour ceux qui aiment l'histoire du développement logiciel de Microsoft .NET, les dates des releases des différentes versions du framework :
Overview of .NET Framework release history
GenerationVersion numberRelease dateDevelopment toolDistributed with
1.01.0.3705.02002-02-13Visual Studio .NETN/A
1.11.1.4322.5732003-04-24Visual Studio .NET 2003Windows Server 2003
2.02.0.50727.422005-11-07Visual Studio 2005Windows Server 2003 R2
3.03.0.4506.302006-11-06Expression BlendWindows VistaWindows Server 2008
3.53.5.21022.82007-11-19Visual Studio 2008Windows 7Windows Server 2008 R2
4.04.0.30319.12010-04-12Visual Studio 2010N/A
4.54.5.50709.179292012-08-15Visual Studio 2012Windows 8Windows Server 2012

Source : WikipediA on y trouvera les grands principes du CLR.

Ne parlons pas de la version 1.0 qui ne fonctionnait pas. D'ailleurs je ne connais personne qui ait démarré en 2002 avec cette version 1.0. On commencera à parler de développement possible avec le .NET Framework que bien plus tard.

DotNET Framework 1.1

ASP.NET Mobile Controls

Les contrôles mobiles sont maintenant intégrés au framework. Le nom Mobile Internet Toolkit est remplacé par ASP.NET Mobile Controls. 

Les contrôles mobiles sont : AdRotator Calendar Command CompareValidator CustomValidator Form Image Label Link List MobilePage ObjectList Panel PhoneCall RangeValidator RegularExpressionValidator RequiredFieldValidator SelectionList StyleSheet TextBox TextView ValidationSummary

Les contrôles mobiles sont extensibles, vous pouvez utiliser la composition et l'héritage pour créer de nouveaux contrôles.

ADO.NET

L'objet DataReader expose maintenant une propriété HasRow pour savoir si l'objet retourne des Lignes sans avoir besoin de faire appel à la fonction Read.

L'objet Connection possède maintenant une méthode EnlistDistributedTransaction pour établir manuellement des transactions distribuées.

Exécution côte à côte

Différentes versions d'une application peuvent s'exécuter en même temps sur un même ordinateur. Une application peut choisir les composants avec lesquels elle va s'exécuter.

IPv6

Le framework .NET support maintenant IPv6 ...

DotNET Framework 2.0

La version 2.0 est importante, on va enfin pouvoir travailler.
Support des plateformes 64-bits
ACL : Access Control List utilisé pour accorder (grant) ou supprimer (revoke) la persmission d'accès au ressources d'un ordinateur.

Apparition des Generics et des Collection Generics.

Globalisation : GetCultureInfo et CultureInfo

ADO.NET 

Support de UDT User-define Types, types définis par l'utilisateur. Apparition des types de données XML.

ASP.NET

Grandement amélioré, les contrôles sont améliorés, on peut éditer modifier des données sans écrire de code. On peut écrire une table de dépendance de cache dans SQL Server.
Apparition des Web Parts. Menu de navigation. Master Page. 
Prise en compte des différents navigateurs, le rendu des contrôles est compatible des standards XHTML 1.1.

Débogueur

Il supporte le mode édit et continuer, vous pouvez modifier le code source et reprendre l'exécution du programme ...

Support de SMTP

Amélioré, on peut maintenant envoyer à plusieurs destinataires, des pièces attachés mettre en copie et en carbon copie ... Et avant c'était comment ? 
Espaces de noms System.Net.Mail et System.Net.Mime

Filtrage des données de Trace

Le système de Trace et Log des données permet maintenant de les filtrer ...

Web Services

Support de SOAP 1.2 et de WS-I Basic Profile 1.0

XML Améliorations

Améliorations du Processeur : XSL Transformation (XSLT)
XmlReader
XmlWriter
XPathNavigator

Langage Visual Basic

Certaines améliorations du Langage Visual Basic sont apportée pour lui donner à peu prêt le même niveau qu'en C# ...

Conclusion

Il y a plein d'autres améliorations du .NET Framework que je ne détaille pas ici, j'ai tenté de résumer mais c'est à se demander comment pouvait-on faire avant ...

DotNET Framework 3.0

La version 3.0 du Framework est sortie pour regrouper les technologies suivantes dans le SDK (Software Development Kit) :
  • Windows Communication Foundation
  • Windows Presentation Foundation
  • Windows Workflow Foundation
  • Windows CardSpace

DotNET Framework 3.5

C'est WCF (Windows Communication Foundation) la partie importante dans cette release. WCF est maintenant intégré dans le .NET Compact Framework pour les applications mobiles.

ASP.NET

Ajax Enable Web Site, les contrôles ScriptManager et UpdatePanel ont été ajouté ainsi on peut rafirachir une page sans la recharger entièrement.
Support IntelliSense pour JavaScripts.
Les fonctions d'authentification, de gestion des rôles et des profile sont maintenant exposées à travers un service-web qui peut être hébergé dans une application WCF, ainsi plusieurs ASP.NET applications peuvent partager ces même services.
Nouveau Data Contrôle ListView
Nouvelle source de données LinqDataSource
De nouveaux outils permettent une meilleur intégration avec IIS 7.0

Add-Ins et extensibilité

Namespace System.AddIn.dll
Fonctionnalités :
Discovery
Activation
Isolation
Sandboxing
UI Composition
Versioning

On se croirait dans MEF (Managable Extensible Framework) ... curieux je n'avais pas vu cet aspect des choses.On va voir que MEF sera intégré au Framework 4.0

Common Language Runtime

Une nouvelle collection : HashSet<T>, modélisation d'un ensemble mathématique de valeurs toutes différentes et non ordonnées.

Diagnostic : nouvelle class EventSchemaTraceListener pour des composants hétérogènes qui traversent des thread des AppDomain.

Linq

Étendu par le .NET 3.5 donne la possibilité de faire des requêtes sur des Tables SQL Server, des ADO.NET DataSet, des XML Documents, et des collections du type IEnumerable et IEnumerable<T>.

Expression Trees

Namespace : System.Linq.Expressions
Permet de représenter des expressions du code sous forme de données.
Mais à quoi cela peut-il bien servir ? Ici.

DotNET Framework 4.0

.NET Framework 4 Client Profile : sous ensemble du .NET Framework 4 optimisé pour les applications clientes.
Améliorations de l'énumération de système de fichiers ??? Et oui on améliore encore c'est trucs là !

Managed Extensibility Framework

Managed Extensibility Framework (MEF) est une nouvelle bibliothèque dans le .NET Framework 4 
qui vous aide à générer des applications extensibles et composables. MEF 
vous permet de spécifier des points où une application peut être étendue, 
d'exposer des services à offrir à d'autres applications extensibles et 
de créer des parties en vue de leur utilisation par des applications extensibles. 
Il facilite également la détectabilité des parties disponibles en fonction des métadonnées, 
sans que les assemblys pour les parties aient besoin d'être chargés.

Dynamic Language Runtime (DLR)

Dynamic Objects, Python est un exemple de langage dynimaque

TBC (To Be Continued)

Aucun commentaire:

Enregistrer un commentaire

Pour plus d'interactivité, n'hésitez pas à laisser votre commentaire.