TechDays 2012 : Les nouveautés du Framework 4.5

Voici une liste des nouveautés du Framework 4.5

1-      Introduction

1- Le Framework .net se décompose en 2 parties

– Le moteur CLR

– Un ensemble de technologies (Entity Framework, WCF, Asp.net ,…) 

2- A partir du Framework 2.0, les nouvelles versions du Framework (3, 3.5) sont des compléments ils se greffent sur le 2.0, le runtime est celui du 2.0.

En 2010, le Framework 4.0 est publié, c’est un nouveau framework il a son propre runtime.

Le Framework 4.5 est un complément au 4.0.

A l’heure actuelle, le Framework 4.5 est disponible en version preview et sera bientôt disponible dans un Windows update.

2-      Les nouveautés

1- Asynchrone

a- pourquoi utiliser le mode asynchrone

– C’est une tendance et est plus une necessité.

– Il permet de de na pas bloquer un Thread

– Il permet une meilleur fuildité de l’IHM

– Ce mode existe depuis le Framework 1 mais n’est pas facile à utiliser.

b-Programmation Asynchrone en 4.5

Le framework 4.5 dispose désormais de méthodes permettants d’utiliser le mode asynchone avec peu de ligne de code.

– Il faut utiliser les mot clés async/await

– La méthode doit renvoyer un type void Task

– Le nom de la méthode doit comporter le mot Async

Exemple:

private async Task DownloadPage(object caller, EventArgs e)

{

   WebClient wc = new WebClient();

   var result = await wc.DownloadStringTaskAsync(« http://www.bing.com »)

}

Toutefois, il faut créer un dispatcher pour rester dans le contexte de l’IHM.

2- DataFlow

Le dataflow est utilisé pour faire de la programmation parallèle.

Traditionnellement on reçoit les données et on écrit pour générér, dans la programmation parallèle on injecte des données en mode pipeline , et on définit les traitements

Depuis le Framework 4 Microsoft a mis en place des méthode pour le développement parallèle. Ces méthodes se trouvent dans le Namespace System.Threading.Task

Les Block sont les objets qui reçoivent les données.

Il est possible de faire des réseaux chaîné de bloc et plusieurs autres manipulations.

Exemple de méthodes applicables sur un ou plusieurs block:

ActionBlock

BroadcastBlock

– TransformBlock

– JoinBlock

-…

 3- Requette HTTP

Namespace : System.net.http

4-MEF (Managed Extensibility Framework) 2 : Injection de dépendance

Dans le framework 4.5 il est possible de faire de l’injection de dépendance sans attribut se basant sur des règles et sur Reflection Contexte

5-Portable Library

Sous ensemble de plusieurs framework dans lequels les assemblies compilées sont compatibles.

6-WCF

Les nouveautés sur WCF sont:

– Nouveau mode : Contract First

Il est possible de générer la classe avec la structure des methodes à partir du WSDL.

ceci en utilisant l’utilitaire svcutl.exe avec la commande /serviceContract

– Single WSDL

Les imports de plusieurs wsdl sont supprimés, tout est réuni dans 1 seul fichier wsdl

– Support des websockets

2 nouveaux bindings (NetHttpBinding andNetHttpsBinding) ont été rajoutés pour permettre une communication utilisant un transport  de type websocket

– Fichier de config client simplifié

– Support de l’UDP

– Paste XML as Classes

En faisant un copier/coller d’un contenu xml, la classe se génère automatiquement avec la deserialisation de ce XML

Exemple : flux Rss

Plus d’infos: http://msdn.microsoft.com/enus/library/dd456789(v=vs.110).aspx

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s