L'environnement .NET et Metro

.NET fonctionne sur toutes les versions récentes de Windows et sur d'autres systèmes. Une version compatible est disponible sous Linux (voir liens externes). Introduit par Microsoft pour Vista en remplacement de la bibliothèque Win32, il est d'abord nommé WinFX puis a ensuite pris officiellement le nom de .NET.

Il fonctionne sous:

  • Windows Vista.
  • Windows XP.
  • Windows server 2003.
  • Linux avec le framework compatible Mono

Composantes du runtime

C'est un ensemble d'interfaces.

Windows Presentation Foundation (ex Avalon)

Moteur de présentation des applications.
C'est l'interface utilisateur graphique. Elle utilise XAML et .NET et permet d'accéder à Direct3D.

Windows Communication Foundation (ex Indigo)

Gère les fonctions de communications et d'appels distants. Remplacera à terme les objets COM dans les fichiers DLL.
C'est l'interface pour le Web et les services Web.

Windows Workflow Foundation

Une interface pour l'automatisation des tâches.

CardSpace (ex InfoCard)

Prend en charge les services d'authentification.

Le développement pour .NET

.NET est aussi un environnement de développement pour les applications locales et pour le web. Il supporte de nombreux langages de programmation qui sont compilés en code intermédiaire ou "bytecode", traité par le runtime.
Le standard pour la CLI (CLR + C Sharp) a été défini par ECMA en 2001 et la plateforme est disponible depuis 2002.

Les composantes du système:

CLR Common Language Runtime

 Gère le code, soit qu'il ait été compilé en langage intermédiaire, soit qu'il soit interprété.

  Les classes sont accessibles à tout langage porté sous .NET et comprennent notamment les classes d'interface utilisateur graphiques.

CLS Common Language System

Bibliothèque commune à tous les langages fonctionnant sous .Net.

IL Intermediate Language

C'est le bytecode de .Net. Il est appelé aussi MSIL. Le bytecode peut être interprété ou compilé en langage machine au moment de l'exécution.

Assembly

Un assembly contient le code généré à partir du code source. Il contient aussi des définitions quand à l'utilisation des ressources, quand on types de données, quand aux dépendances et à la version des objets qui sont utilisés.

Code managé

Au contraire du code "unmanaged" qui utilise directement les librairies natives, le code managé est encadré et fonctionne de façon sécurisée.

Le framework .NET 3.5

Il succède à .NET 2.0 et .NET 3.0 et il est indispensable pour faire fonctionner les outils de développement de la gamme Visual Studio Express.

La version 3.5 ajoute des fonctionnalités à Windows Workflow Foundation (WF), Windows Communication Foundation (WCF), Windows Presentation Foundation (WPF) et Windows CardSpace.

En outre il facilite le développement d'applications Web. Par exemple, ASP.NET AJAX est amélioré pour les applications riches sur Internet. Les protocoles communément utilisés par les webmasters sont implémentés: JSON, REST, POX, RSS, ATOM, etc.

NET et Windows 8

Le framework qui est la base de l'interface de Windows depuis Vista est aussi installé d'emblée dans Windows 8. Les programmes C# continueront à fonctionner sans changement dans le mode Desktop, qui est la continuation de Windows 7.

Mais pour le mode Metro,c'est différent. On peut voir sur le schéma francisé de Windows 8, que Metro ne repose pas sur un socle .NET mais sur son remplaçant, WinRT.
Cela annonce-t-il la fin du framework? Cela dépendra des utilisateurs, des développeurs qui adopteront massivement ou non Metro. Si cette interface qui est surtout conçue pour les tablettes, est aussi adoptée sur le bureau, ou si les PC disparaissent pour laisser place à d'autres types d'ordinateurs, alors effectivement les programmeurs auront eu tort d'investir dans le développement pour .NET. A moins que ce ne soit pour du logiciel d'entreprise, car dans ce cas, le Desktop est là pour durer autant même que Windows 7 car il y toujours en 2012, cinq ans après Vista, une majorité de PC sous XP dans l'entreprise!

Liens externes