Présentation
EnglishRÉSUMÉ
Le .NET Framework, qui permet la création et l’exécution d’applications modernes conçues autour des standards de l’Internet (XML, SOAP, WSDL, HTTP), est de nos jours devenu incontournable pour la réalisation de projets informatiques. Après avoir précisé le vocabulaire autour de cette riche et complète plateforme normalisée par Microsoft, l’article s’attarde sur l’architecture et les principales caractéristiques de .NET. Cette plateforme offre des outils de développement sophistiqués, des langages de programmation adaptés aux besoins, la possibilité de construire un composant en utilisant plusieurs langages de programmation grâce au langage de type commun.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleAuteur(s)
-
David EMSELLEM : Ingénieur à l’université de Nice-Sophia-Antipolis
-
Michel RIVEILL : Professeur à l’université de Nice-Sophia-Antipolis
INTRODUCTION
.NET est en passe de devenir une technologie incontournable pour la réalisation de projets informatiques. Nous abordons ici quelques-unes des principales facettes de cette plate-forme moderne, diverse et parfois complexe. Le paragraphe d’introduction met en évidence la complétude et la richesse de l’ensemble des bibliothèques de la plate-forme .NET. Il nous permet de préciser le vocabulaire pour différencier les éléments de la plate-forme normalisés par Microsoft de ceux qui sont restés propriétaires afin de pouvoir très rapidement comparer les différentes plates-formes de développement. Le deuxième paragraphe insiste sur l’architecture de .NET et sur ses principales caractéristiques. Le troisième paragraphe décrit la manière de construire une application répartie en .NET en construisant soit un client lourd avec les technologies .NET Remoting ou les services Web, soit un client léger avec la technologie ASP. La quatrième partie décrit complètement une petite application mettant en évidence l’ensemble des briques logicielles précédemment évoquées, complétées par les méthodes d’accès aux données. Une évaluation comparative et une rapide présentation du futur de la plate-forme concluent ce dossier.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
2. Architecture
2.1 Modèle de développement
Sun, à travers les spécifications J2ME, J2SE et J2EE, a fait le choix d’une approche monolangage (Java) en construisant pour celui-ci une machine virtuelle spécifique, la JVM (Java Virtual Machine) qui peut être aisément portée sur différentes plates-formes. Ce choix peut être justifié si ce langage est suffisamment générique pour prendre en compte les différents besoins des programmeurs et suffisamment diffusé pour que les applications puissent s’exécuter sur un ensemble de sites toujours plus important.
Microsoft, au travers de .NET, a fait le choix d’une approche multilangage où chaque compilateur cible un même langage intermédiaire. La machine virtuelle charge ce code, le compile à la volée en code natif, l’exécute et contrôle son exécution. Pour effectuer ces différentes actions, un contrat de coopération a été défini entre le code devant s’exécuter de manière native et la machine virtuelle elle-même. La responsabilité des tâches telles que la création d’objets, les appels de méthodes, la gestion des exceptions est déléguée à la machine virtuelle, ce qui lui permet de fournir des services additionnels comme la mise au point, la sécurité et la gestion de la mémoire (garbage collection) pour tous les langages supportés. La machine virtuelle permet une intégration croisée de composants logiciels écrits dans différents langages. Un mécanisme d’autodescription des composants permet le déploiement aisé de ceux-ci et simplifie grandement la gestion des versions.
Cette approche permet d’avoir les principales propriétés suivantes :
-
un seul modèle de composants (assembly) qui intègre des métadonnées permettant la description des interfaces du composant, la documentation, l’identification du code (auteur, organisation, version, etc.) ;
-
un seul système de type commun à tous les langages de programmation ;
-
un déploiement facilité par copie des bibliothèques utilisées ;
-
un modèle de sécurité unifié permettant d’avoir la même approche pour vérifier les différents éléments de sécurité tout au long du cycle de vie (déploiement, chargement, compilation à la volée, exécution, etc.).
La figure 3...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Architecture
BIBLIOGRAPHIE
-
(1) - McGOVERN (J.), ADATIA (R.), FAIN (Y.), GORDON (J.), HENRY (E.), HURST (W.), JAIN (A.), LITTLE (M.), NAGARAJAN (V.), OAK (H.), PHILIPS (L.A) - Java 2 Enterprise Edition 1.4 (J2EE 1.4) Bible. - Wiley (2003).
-
(2) - OMG, Corba Component, Volume I. - OMG TC Document orbos/99-07-01 (1999).
-
(3) - NEWCOMER (E.) - Understanding Web Services : XML, WSDL, SOAP and UDDI. - Addison Wesley (2002).
-
(4) - DUMBILL (E.), BORNSTEIN (N.M) - Mono: A Developer’s Notebook - . O’Reilly (2004).
-
(5) - WEATHERLEY (R.), GOPAL (V.) - Design of the Portable.Net Interpreter DotGNU. - LINUX.conf.au, Perth (Australia), 22-25 janv. 2003.
-
(6) - GUNNERSON (E.) - A programmer’s Introduction to C#. - Apress (2005).
-
...
ANNEXES
-
Normes .NET
ECMA – 3346-05 C# Language Specification
ECMA – 3356-05 Common Langage Infrastructure (CLI)
ISO/CEI 23270 4-03 Technologies de l’information
ISO/CEI 23271 Spécification du langage C# 4-03 Technologies de l’information – Infrastructure commune de langage
-
Normes W3C
SOAP
XML
HAUT DE PAGE
(liste non exhaustive)
-
Logiciels libres
Mono
DotGNU
http://www.southern-storm.com.au/portable_net.html
Rotor
http://msdn.microsoft.com/sscli
-
Auteurs
.NET
ASP.NET
Web Matrix
webMethods Glue
-
En...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive