SlideShare una empresa de Scribd logo
1 de 7
Descargar para leer sin conexión
1
Chapitre 1 : Programmation événementielle
1.1 Introduction
La programmation événementielle (ou programmation par événements) est un type de
programmation fondé sur les événements. Elle s'oppose à la Programmation séquentielle. Le
programme sera principalement défini par ses réactions aux différents événements qui
peuvent se produire ; l'ordre d'exécution des différentes opérations n'est pas strictement
déterminé à l'avance.
La programmation événementielle peut également être définie comme une technique
d'architecture logicielle où l'application a une boucle principale divisée en deux sections : la
première section détecte les événements, la seconde les gère.
La programmation événementielle peut être réalisée dans n'importe quel langage de
programmation, bien que la tâche soit plus aisée dans les langages de haut niveau. Certains
environnements de développement intégré (IDE) permettent de générer automatiquement le
code des tâches récurrentes dans la gestion des événements. Parmi les environnements de
développement intégré on trouve Visual Studio, SharpDevelop, MonoDevelop,….
1.2 Visual Studio
Microsoft Visual Studio est une suite de logiciels de développement pour Windows conçu par
Microsoft. Visual Studio est un ensemble complet d'outils de développement permettant de
générer des applications Web ASP.NET, des Services Web XML, des applications
bureautiques et des applications mobiles. Visual Basic, Visual C++, Visual C# et Visual J#
utilisent tous le même environnement de développement intégré, qui leur permet de partager
des outils et facilite la création de solutions faisant appel à plusieurs langages. Par ailleurs, ces
langages permettent de mieux tirer parti des fonctionnalités du Framework .NET.
1.2.1 Framework .NET
Le .NET Framework est un framework qui peut être utilisé par le système d'exploitation
Microsoft Windows. Le framework .NET s'appuie sur la norme Common Language
Infrastructure (CLI) qui est indépendante du langage de programmation utilisé. Ainsi tous les
langages compatibles respectant la norme CLI ont accès à toutes les bibliothèques installées
(installables) dans l'environnement d'exécution.
Le framework .NET est un sous ensemble de la technologie Microsoft .NET. Il a pour but de
faciliter la tâche des développeurs en proposant une approche unifiée à la conception
2
d'applications Windows ou Web, tout en introduisant des facilités pour le développement, le
déploiement et la maintenance d'applications.
Le framework gère tous les aspects de l'exécution d'une application :
• il alloue la mémoire pour le stockage des données et des instructions du programme ;
• il autorise ou refuse des droits à l'application ;
• il démarre et gère l'exécution ;
• il gère la ré-allocation de la mémoire pour les ressources qui ne sont plus utilisées.
Il est composé de deux blocs principaux :
• l'implémentation d'une machine virtuelle compatible Common Language
Infrastructure (CLI) sous le nom de Common Language Runtime (CLR) et Dynamic
Language Runtime (DLR);
• bibliothèques de classes .NET
Figure 1 : L’architecture fonctionnelle de .NET
a)
Commo
machine
Commo
program
Languag
Languag
Quel qu
en CIL
instructi
pas être
par le JI
est exéc
F
Common La
on Languag
e virtuelle d
on Languag
mmes. Le C
ge- CIL app
ge IL.
ue soit le lan
L (Common
ion relative
e exécuté dir
IT Compile
cuté et stock
Figure 2 : Sché
anguage Ru
ge Runtime
du framewo
e Infrastruc
CLR fait to
pelé aussi M
ngage utilis
n Intermedi
e au matérie
rectement. U
er (''Just in T
ké en mémo
éma explicatif d
untime
(CLR) est
ork .NET. Il
cture (CLI)
ourner une
Microsoft In
sé pour écrir
iate Langua
el (i.e. hard
Une fois le
Time) en la
oire sous for
3
du Common L
le nom cho
l s'agit de l'i
qui définit
sorte de b
ntermediate
re une appli
age). Ce c
dware) ou a
code présen
angage natif
rme de code
Language Infra
oisi par Mi
implémenta
l'environne
bytecode n
Language -
ication .NE
code interm
au système
nt dans le C
f de la mach
e natif.
astructure (CL
icrosoft pou
ation par Mi
ement d'exéc
nommé Com
- MSIL ou e
ET, le code d
médiaire ne
d'exploitati
CLR, il va p
hine. Une fo
LI)
ur le compo
icrosoft du
cution des c
mmon Inter
encore Inter
doit être tra
e comporte
ion. Il ne pe
ouvoir être
ois compilé
osant de
standard
codes de
rmediate
rmediate
ansformé
aucune
eut donc
compilé
, le code
4
Le CLR est nécessaire pour exécuter le code intermédiaire. Il est basé sur le CTS (Common
Type System) et le CLS (Common Language Specification). Le CLS définit les
fonctionnalités auxquelles doit répondre un langage pour être « .NET Compatible ». Le CTS
garantit que tous les types manipulés par les langages sont les mêmes. Le CLR apporte de
nombreuses fonctionnalités comme le ramasse-miettes (en anglais : Garbage Collector) (la
mémoire utilisée par l'application lors de l'exécution est optimisée), la BCL (Base Class
Library) et le système de sécurité.
b) Bibliothèques de classes .NET
Il y a trois couches au-dessus du Common Language Runtime –CLR (voir figure 1), chacune
comportant des classes apportant des fonctionnalités de plus en plus évoluées.
• Base Class Library
Dans la première couche se trouve la Base Class Library (BCL), rassemblant des classes
permettant les manipulations de chaînes de texte, la gestion des entrées/sorties, des
communications réseaux, des processus légers et le design des interfaces utilisateur. Ces
classes sont similaires à celles présentes dans l'API Java développée par Sun Microsystems.
Par exemple, la manipulation des chaînes est disponible dans la classe String, dans les deux
langages ; la différence étant qu'en Java il n'existe pas de type de base pour manipuler les
chaînes (on manipule des objets 'String'), alors qu'en .NET, le type string (avec un 's'
minuscule) a spécifiquement été défini.
• Classes d'accès aux données
La deuxième couche est composée de deux bibliothèques de classes d'accès aux données.
Tout d'abord, ADO.NET, s'élevant sur les bases de l'ancien ADO (ActiveX Data Objects)
utilisé par les développeurs ASP, et permettant l'accès sous format XML aux interfaces de
bases de données SQL Server, ODBC, OLE DB, Oracle et Sybase, et bien sûr aux fichiers
XML. Les XML Classes permettent de manipuler les données XML.
• XML Web Services, Web Forms, Windows Forms
La dernière couche, la plus élevée, est utilisée pour la création de services web, de pages
Web, et d'applications Windows. Les deux premiers forment ASP.NET, là aussi une référence
à l'ancien langage de programmation Web. Les pages internet ayant pour extension .aspx sont
généralement des pages Web écrites en .NET, tandis que les pages écrites en ASP se
terminent généralement en .asp.
5
1.2.2 Les versions successives
a) Visual Studio 97
La première version de Visual Studio a été publiée en 1997 par Microsoft, afin de rassembler
au sein d'un même environnement de développement plusieurs de ses outils de
programmation. Visual Studio 97 incluait Visual Basic 5.0 et Visual C++ 5.0, pour le
développement d'application Windows, Visual J++ 1.1 pour la programmation Java et Visual
FoxPro 5.0 pour la programmation xBase. Visual InterDev était utilisé pour créer des pages
web générées dynamiquement en ASP.
b) Visual Studio 6.0
La version suivante (6.0) date de 1998. Cette version a été la base du développement pour
Microsoft pour les quatre années suivantes, jusqu'au passage au développement .NET. Visual
Studio 6.0 a été la dernière version incluant Visual Basic tel que le connaissait la majeure
partie des programmeurs VB.
c) Visual Studio .NET (2002)
En 2002, Visual Studio .NET est publié. Le principal changement a été l'introduction du .NET
Framework. Les programmes développés en utilisant .NET ne sont pas compilés en langage
machine (au contraire du C++, par exemple) mais dans un langage intermédiaire MSIL. Une
application MSIL est ensuite compilée, au moment de son exécution, dans le langage machine
approprié à la plate-forme sur laquelle elle est exécutée. Cette compilation s'appelle une
compilation « juste à temps » (Just-In-Time en anglais ou JIT).
En dissociant le programme binaire de la plateforme, cette méthode permet notamment à
Microsoft de mieux supporter les différentes versions du système d'exploitation Windows
ainsi que les nouvelles architectures de micro-processeurs. Les programmes compilés en
MSIL peuvent être exécutés seulement sur des plates-formes possédant une implémentation
du .NET framework. Il est possible de lancer des programmes MSIL sur Linux ou Mac OS X
grâce à des implémentations non-Microsoft de .NET comme Mono et DotGNU.
Microsoft a aussi introduit le langage C#, similaire au langage Java.
Visual Basic, renommé Visual Basic .NET, a subi des modifications drastiques pour
correspondre au nouveau framework, notamment en introduisant la programmation orientée
objet.
Le numéro de version interne de Visual Studio .NET est 7.0.
6
d) Visual Studio .NET 2003
Il s'agit d'une mise à jour mineure de Visual Studio 2002. Le Framework .Net est passé à la
version 1.1.
Le numéro de version interne de Visual Studio 2003 est 7.1.
e) Visual Studio 2005
Visual Studio 2005 a été publiée en ligne en octobre 2005. Le Framework .NET est alors dans
sa version 2.0. Une des nouvelles fonctionnalités de cette version est le "Deployment
Designer" permettant de valider la conception d'applications avant leur déploiement.
L'ASP.net est passé en 2.0. Visual Studio 2005 inclut un support du 64-bit. La nouvelle API
du Framework .Net inclus les types génériques permettant de créer des patrons de classes ou
de méthodes.
Le numéro de version interne de Visual Studio 2005 est 8.0 (il s'agit d'une révision majeure).
f) Visual Studio Express
Microsoft propose maintenant des versions "express" dans un package nommé Microsoft
Visual Studio Express. Ces versions sont gratuites et disponibles sur le site de téléchargement.
Cependant, il n'existe pas de version express de Visual Studio complète. Les éléments sont
disponibles indépendamment les uns des autres (Visual Basic, Visual C++, ...).
g) Visual Studio 2008
Cette version est sortie en version finale à la fin de l'année 2007. Cette version est fondée sur
le .NET Framework 3.5.
Le numéro de version interne de Visual Studio 2008 est 9.0.
h) Visual Studio 2010
Cette version est sortie en version finale le 12 avril 2010. Cette nouvelle version utilise la
version 4.0 du .NET Framework dans le logiciel ainsi qu'une refonte de l'interface graphique
propulsé par WPF.
Un nouveau langage de programmation fait officiellement son apparition : F#
7
Ou trouver Visual Basic 2010 Express?
Cliquer sur le lien: http://www.microsoft.com/express/downloads/ Dans la liste de lien,
cliquer sur 'Visual Basic Express 2010' Puis dans la liste 'Select language", choisissez
"French", une fenêtre pop-up démarre.
1.3 Visual Basic
Visual Basic a été conçu pour être facile à apprendre et à utiliser. Le langage permet de créer
des applications graphiques de façon simple, mais également de créer des applications
véritablement complexes. Programmer en VB est un mélange de plusieurs tâches, comme
disposer visuellement les composants et contrôles sur les formulaires, définir les propriétés et
les actions associées à ces composants, et enfin ajouter du code pour ajouter des
fonctionnalités. Comme les attributs et les actions reçoivent des valeurs par défaut, il est
possible de créer un programme simple sans que le programmeur ait à écrire de nombreuses
lignes de code.
Dans l'IDE, les formulaires sont créés en utilisant la technique de Glisser-déposer, permettant
de disposer des contrôles (boîte de saisie, case à cocher, bouton, etc.) sur le formulaire. Les
contrôles possèdent tous des attributs et des gestionnaires d’évènements associés. Des valeurs
par défaut sont attribuées, qui peuvent être modifiées par le programmeur. De nombreux
attributs peuvent être modifiés dynamiquement lors de l’exécution, en réponse à des actions
de l’utilisateur ou à des changements dans l’environnement. Les contrôles fournissent les
fonctionnalités de base de l’application, les programmeurs ajoutant simplement le fonctionnel
supplémentaire en insérant du code dans les gestionnaires d’évènements appropriés. Visual
Basic permet de créer des exécutables (fichiers .EXE).

Más contenido relacionado

La actualidad más candente

Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 OverviewGregory Renard
 
Le développement d’un Composant WinRT
Le développement d’un Composant WinRTLe développement d’un Composant WinRT
Le développement d’un Composant WinRTMicrosoft
 
Java 110605092007-phpapp02
Java 110605092007-phpapp02Java 110605092007-phpapp02
Java 110605092007-phpapp02Eric Bourdet
 
Cours de C++, en français, 2002 - Cours 3.1
Cours de C++, en français, 2002 - Cours 3.1Cours de C++, en français, 2002 - Cours 3.1
Cours de C++, en français, 2002 - Cours 3.1Laurent BUNIET
 
Framework Hibernate
Framework HibernateFramework Hibernate
Framework HibernateInes Ouaz
 
Java & Etat de l'art
Java & Etat de l'artJava & Etat de l'art
Java & Etat de l'artInes Ouaz
 
Environnement java
Environnement javaEnvironnement java
Environnement javaInes Ouaz
 
Tp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseTp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseLilia Sfaxi
 
Développement Android
Développement AndroidDéveloppement Android
Développement AndroidFranck SIMON
 
Formation POO & Java (2ème séance)
Formation POO & Java (2ème séance)Formation POO & Java (2ème séance)
Formation POO & Java (2ème séance)G²FOSS ENIT
 
Partie 6: Qualité du Logiciel — Programmation orientée objet en C++
Partie 6: Qualité du Logiciel — Programmation orientée objet en C++Partie 6: Qualité du Logiciel — Programmation orientée objet en C++
Partie 6: Qualité du Logiciel — Programmation orientée objet en C++Fabio Hernandez
 

La actualidad más candente (20)

Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 Overview
 
Chap 02 poo en java
Chap 02 poo en javaChap 02 poo en java
Chap 02 poo en java
 
Le développement d’un Composant WinRT
Le développement d’un Composant WinRTLe développement d’un Composant WinRT
Le développement d’un Composant WinRT
 
Java 110605092007-phpapp02
Java 110605092007-phpapp02Java 110605092007-phpapp02
Java 110605092007-phpapp02
 
Cours de C++, en français, 2002 - Cours 3.1
Cours de C++, en français, 2002 - Cours 3.1Cours de C++, en français, 2002 - Cours 3.1
Cours de C++, en français, 2002 - Cours 3.1
 
Framework Hibernate
Framework HibernateFramework Hibernate
Framework Hibernate
 
Ado.net database access
Ado.net database accessAdo.net database access
Ado.net database access
 
Java & Etat de l'art
Java & Etat de l'artJava & Etat de l'art
Java & Etat de l'art
 
Mysql
MysqlMysql
Mysql
 
Hello droid
Hello droidHello droid
Hello droid
 
Support POO Java première partie
Support POO Java première partieSupport POO Java première partie
Support POO Java première partie
 
Base11
Base11Base11
Base11
 
Environnement java
Environnement javaEnvironnement java
Environnement java
 
Introduction àJava
Introduction àJavaIntroduction àJava
Introduction àJava
 
Tp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseTp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-Eclipse
 
Développement Android
Développement AndroidDéveloppement Android
Développement Android
 
Formation POO & Java (2ème séance)
Formation POO & Java (2ème séance)Formation POO & Java (2ème séance)
Formation POO & Java (2ème séance)
 
Partie 6: Qualité du Logiciel — Programmation orientée objet en C++
Partie 6: Qualité du Logiciel — Programmation orientée objet en C++Partie 6: Qualité du Logiciel — Programmation orientée objet en C++
Partie 6: Qualité du Logiciel — Programmation orientée objet en C++
 
J2ee
J2eeJ2ee
J2ee
 
Tp3 - UML
Tp3 - UMLTp3 - UML
Tp3 - UML
 

Similar a Chapitre 1

Introdot Netc Sharp Fr
Introdot Netc Sharp FrIntrodot Netc Sharp Fr
Introdot Netc Sharp FrGregory Renard
 
Premiers pas dans l'univers .NET
Premiers pas dans l'univers .NETPremiers pas dans l'univers .NET
Premiers pas dans l'univers .NETBantu Hub
 
Cours VB 2012 seance 1
Cours VB 2012 seance 1Cours VB 2012 seance 1
Cours VB 2012 seance 1ISIG
 
Cours Visual Basic.NET
Cours Visual Basic.NETCours Visual Basic.NET
Cours Visual Basic.NETAziz Darouichi
 
La technologie net par karim kalti
La technologie net par karim kalti La technologie net par karim kalti
La technologie net par karim kalti Imen Naés
 
F Les Scripts En Power Shell
F Les Scripts En Power ShellF Les Scripts En Power Shell
F Les Scripts En Power ShellUGAIA
 
Java uik-chap1-intro java
Java uik-chap1-intro javaJava uik-chap1-intro java
Java uik-chap1-intro javaAmel Morchdi
 
1-supportpoojavapremirepartie-140408132307-phpapp01.pptx
1-supportpoojavapremirepartie-140408132307-phpapp01.pptx1-supportpoojavapremirepartie-140408132307-phpapp01.pptx
1-supportpoojavapremirepartie-140408132307-phpapp01.pptxRihabBENLAMINE
 
Entity_framework_db first
Entity_framework_db firstEntity_framework_db first
Entity_framework_db firstZineb ELGARRAI
 
Introduction au microsoft .net framework 4.0
Introduction au microsoft .net framework 4.0Introduction au microsoft .net framework 4.0
Introduction au microsoft .net framework 4.0Mahfoud EL HOUDAIGUI
 
La plateforme de développement Microsoft pour les nuls
La plateforme de développement Microsoft pour les nulsLa plateforme de développement Microsoft pour les nuls
La plateforme de développement Microsoft pour les nulsMicrosoft
 
cours-android.pdf
cours-android.pdfcours-android.pdf
cours-android.pdfmed_univ78
 

Similar a Chapitre 1 (20)

Architecture .net
Architecture  .netArchitecture  .net
Architecture .net
 
Introdot Netc Sharp Fr
Introdot Netc Sharp FrIntrodot Netc Sharp Fr
Introdot Netc Sharp Fr
 
Introduction à ASP.NET
Introduction à ASP.NETIntroduction à ASP.NET
Introduction à ASP.NET
 
Premiers pas dans l'univers .NET
Premiers pas dans l'univers .NETPremiers pas dans l'univers .NET
Premiers pas dans l'univers .NET
 
Cours VB 2012 seance 1
Cours VB 2012 seance 1Cours VB 2012 seance 1
Cours VB 2012 seance 1
 
Cours Visual Basic.NET
Cours Visual Basic.NETCours Visual Basic.NET
Cours Visual Basic.NET
 
La technologie net par karim kalti
La technologie net par karim kalti La technologie net par karim kalti
La technologie net par karim kalti
 
Windev
WindevWindev
Windev
 
Architecture android
Architecture androidArchitecture android
Architecture android
 
Tour Horizont.Net
Tour Horizont.NetTour Horizont.Net
Tour Horizont.Net
 
F Les Scripts En Power Shell
F Les Scripts En Power ShellF Les Scripts En Power Shell
F Les Scripts En Power Shell
 
Java uik-chap1-intro java
Java uik-chap1-intro javaJava uik-chap1-intro java
Java uik-chap1-intro java
 
1-supportpoojavapremirepartie-140408132307-phpapp01.pptx
1-supportpoojavapremirepartie-140408132307-phpapp01.pptx1-supportpoojavapremirepartie-140408132307-phpapp01.pptx
1-supportpoojavapremirepartie-140408132307-phpapp01.pptx
 
Entity_framework_db first
Entity_framework_db firstEntity_framework_db first
Entity_framework_db first
 
1-android.pdf
1-android.pdf1-android.pdf
1-android.pdf
 
Introduction au microsoft .net framework 4.0
Introduction au microsoft .net framework 4.0Introduction au microsoft .net framework 4.0
Introduction au microsoft .net framework 4.0
 
Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
 
La plateforme de développement Microsoft pour les nuls
La plateforme de développement Microsoft pour les nulsLa plateforme de développement Microsoft pour les nuls
La plateforme de développement Microsoft pour les nuls
 
cours-android.pdf
cours-android.pdfcours-android.pdf
cours-android.pdf
 
Vbnet
VbnetVbnet
Vbnet
 

Chapitre 1

  • 1. 1 Chapitre 1 : Programmation événementielle 1.1 Introduction La programmation événementielle (ou programmation par événements) est un type de programmation fondé sur les événements. Elle s'oppose à la Programmation séquentielle. Le programme sera principalement défini par ses réactions aux différents événements qui peuvent se produire ; l'ordre d'exécution des différentes opérations n'est pas strictement déterminé à l'avance. La programmation événementielle peut également être définie comme une technique d'architecture logicielle où l'application a une boucle principale divisée en deux sections : la première section détecte les événements, la seconde les gère. La programmation événementielle peut être réalisée dans n'importe quel langage de programmation, bien que la tâche soit plus aisée dans les langages de haut niveau. Certains environnements de développement intégré (IDE) permettent de générer automatiquement le code des tâches récurrentes dans la gestion des événements. Parmi les environnements de développement intégré on trouve Visual Studio, SharpDevelop, MonoDevelop,…. 1.2 Visual Studio Microsoft Visual Studio est une suite de logiciels de développement pour Windows conçu par Microsoft. Visual Studio est un ensemble complet d'outils de développement permettant de générer des applications Web ASP.NET, des Services Web XML, des applications bureautiques et des applications mobiles. Visual Basic, Visual C++, Visual C# et Visual J# utilisent tous le même environnement de développement intégré, qui leur permet de partager des outils et facilite la création de solutions faisant appel à plusieurs langages. Par ailleurs, ces langages permettent de mieux tirer parti des fonctionnalités du Framework .NET. 1.2.1 Framework .NET Le .NET Framework est un framework qui peut être utilisé par le système d'exploitation Microsoft Windows. Le framework .NET s'appuie sur la norme Common Language Infrastructure (CLI) qui est indépendante du langage de programmation utilisé. Ainsi tous les langages compatibles respectant la norme CLI ont accès à toutes les bibliothèques installées (installables) dans l'environnement d'exécution. Le framework .NET est un sous ensemble de la technologie Microsoft .NET. Il a pour but de faciliter la tâche des développeurs en proposant une approche unifiée à la conception
  • 2. 2 d'applications Windows ou Web, tout en introduisant des facilités pour le développement, le déploiement et la maintenance d'applications. Le framework gère tous les aspects de l'exécution d'une application : • il alloue la mémoire pour le stockage des données et des instructions du programme ; • il autorise ou refuse des droits à l'application ; • il démarre et gère l'exécution ; • il gère la ré-allocation de la mémoire pour les ressources qui ne sont plus utilisées. Il est composé de deux blocs principaux : • l'implémentation d'une machine virtuelle compatible Common Language Infrastructure (CLI) sous le nom de Common Language Runtime (CLR) et Dynamic Language Runtime (DLR); • bibliothèques de classes .NET Figure 1 : L’architecture fonctionnelle de .NET
  • 3. a) Commo machine Commo program Languag Languag Quel qu en CIL instructi pas être par le JI est exéc F Common La on Languag e virtuelle d on Languag mmes. Le C ge- CIL app ge IL. ue soit le lan L (Common ion relative e exécuté dir IT Compile cuté et stock Figure 2 : Sché anguage Ru ge Runtime du framewo e Infrastruc CLR fait to pelé aussi M ngage utilis n Intermedi e au matérie rectement. U er (''Just in T ké en mémo éma explicatif d untime (CLR) est ork .NET. Il cture (CLI) ourner une Microsoft In sé pour écrir iate Langua el (i.e. hard Une fois le Time) en la oire sous for 3 du Common L le nom cho l s'agit de l'i qui définit sorte de b ntermediate re une appli age). Ce c dware) ou a code présen angage natif rme de code Language Infra oisi par Mi implémenta l'environne bytecode n Language - ication .NE code interm au système nt dans le C f de la mach e natif. astructure (CL icrosoft pou ation par Mi ement d'exéc nommé Com - MSIL ou e ET, le code d médiaire ne d'exploitati CLR, il va p hine. Une fo LI) ur le compo icrosoft du cution des c mmon Inter encore Inter doit être tra e comporte ion. Il ne pe ouvoir être ois compilé osant de standard codes de rmediate rmediate ansformé aucune eut donc compilé , le code
  • 4. 4 Le CLR est nécessaire pour exécuter le code intermédiaire. Il est basé sur le CTS (Common Type System) et le CLS (Common Language Specification). Le CLS définit les fonctionnalités auxquelles doit répondre un langage pour être « .NET Compatible ». Le CTS garantit que tous les types manipulés par les langages sont les mêmes. Le CLR apporte de nombreuses fonctionnalités comme le ramasse-miettes (en anglais : Garbage Collector) (la mémoire utilisée par l'application lors de l'exécution est optimisée), la BCL (Base Class Library) et le système de sécurité. b) Bibliothèques de classes .NET Il y a trois couches au-dessus du Common Language Runtime –CLR (voir figure 1), chacune comportant des classes apportant des fonctionnalités de plus en plus évoluées. • Base Class Library Dans la première couche se trouve la Base Class Library (BCL), rassemblant des classes permettant les manipulations de chaînes de texte, la gestion des entrées/sorties, des communications réseaux, des processus légers et le design des interfaces utilisateur. Ces classes sont similaires à celles présentes dans l'API Java développée par Sun Microsystems. Par exemple, la manipulation des chaînes est disponible dans la classe String, dans les deux langages ; la différence étant qu'en Java il n'existe pas de type de base pour manipuler les chaînes (on manipule des objets 'String'), alors qu'en .NET, le type string (avec un 's' minuscule) a spécifiquement été défini. • Classes d'accès aux données La deuxième couche est composée de deux bibliothèques de classes d'accès aux données. Tout d'abord, ADO.NET, s'élevant sur les bases de l'ancien ADO (ActiveX Data Objects) utilisé par les développeurs ASP, et permettant l'accès sous format XML aux interfaces de bases de données SQL Server, ODBC, OLE DB, Oracle et Sybase, et bien sûr aux fichiers XML. Les XML Classes permettent de manipuler les données XML. • XML Web Services, Web Forms, Windows Forms La dernière couche, la plus élevée, est utilisée pour la création de services web, de pages Web, et d'applications Windows. Les deux premiers forment ASP.NET, là aussi une référence à l'ancien langage de programmation Web. Les pages internet ayant pour extension .aspx sont généralement des pages Web écrites en .NET, tandis que les pages écrites en ASP se terminent généralement en .asp.
  • 5. 5 1.2.2 Les versions successives a) Visual Studio 97 La première version de Visual Studio a été publiée en 1997 par Microsoft, afin de rassembler au sein d'un même environnement de développement plusieurs de ses outils de programmation. Visual Studio 97 incluait Visual Basic 5.0 et Visual C++ 5.0, pour le développement d'application Windows, Visual J++ 1.1 pour la programmation Java et Visual FoxPro 5.0 pour la programmation xBase. Visual InterDev était utilisé pour créer des pages web générées dynamiquement en ASP. b) Visual Studio 6.0 La version suivante (6.0) date de 1998. Cette version a été la base du développement pour Microsoft pour les quatre années suivantes, jusqu'au passage au développement .NET. Visual Studio 6.0 a été la dernière version incluant Visual Basic tel que le connaissait la majeure partie des programmeurs VB. c) Visual Studio .NET (2002) En 2002, Visual Studio .NET est publié. Le principal changement a été l'introduction du .NET Framework. Les programmes développés en utilisant .NET ne sont pas compilés en langage machine (au contraire du C++, par exemple) mais dans un langage intermédiaire MSIL. Une application MSIL est ensuite compilée, au moment de son exécution, dans le langage machine approprié à la plate-forme sur laquelle elle est exécutée. Cette compilation s'appelle une compilation « juste à temps » (Just-In-Time en anglais ou JIT). En dissociant le programme binaire de la plateforme, cette méthode permet notamment à Microsoft de mieux supporter les différentes versions du système d'exploitation Windows ainsi que les nouvelles architectures de micro-processeurs. Les programmes compilés en MSIL peuvent être exécutés seulement sur des plates-formes possédant une implémentation du .NET framework. Il est possible de lancer des programmes MSIL sur Linux ou Mac OS X grâce à des implémentations non-Microsoft de .NET comme Mono et DotGNU. Microsoft a aussi introduit le langage C#, similaire au langage Java. Visual Basic, renommé Visual Basic .NET, a subi des modifications drastiques pour correspondre au nouveau framework, notamment en introduisant la programmation orientée objet. Le numéro de version interne de Visual Studio .NET est 7.0.
  • 6. 6 d) Visual Studio .NET 2003 Il s'agit d'une mise à jour mineure de Visual Studio 2002. Le Framework .Net est passé à la version 1.1. Le numéro de version interne de Visual Studio 2003 est 7.1. e) Visual Studio 2005 Visual Studio 2005 a été publiée en ligne en octobre 2005. Le Framework .NET est alors dans sa version 2.0. Une des nouvelles fonctionnalités de cette version est le "Deployment Designer" permettant de valider la conception d'applications avant leur déploiement. L'ASP.net est passé en 2.0. Visual Studio 2005 inclut un support du 64-bit. La nouvelle API du Framework .Net inclus les types génériques permettant de créer des patrons de classes ou de méthodes. Le numéro de version interne de Visual Studio 2005 est 8.0 (il s'agit d'une révision majeure). f) Visual Studio Express Microsoft propose maintenant des versions "express" dans un package nommé Microsoft Visual Studio Express. Ces versions sont gratuites et disponibles sur le site de téléchargement. Cependant, il n'existe pas de version express de Visual Studio complète. Les éléments sont disponibles indépendamment les uns des autres (Visual Basic, Visual C++, ...). g) Visual Studio 2008 Cette version est sortie en version finale à la fin de l'année 2007. Cette version est fondée sur le .NET Framework 3.5. Le numéro de version interne de Visual Studio 2008 est 9.0. h) Visual Studio 2010 Cette version est sortie en version finale le 12 avril 2010. Cette nouvelle version utilise la version 4.0 du .NET Framework dans le logiciel ainsi qu'une refonte de l'interface graphique propulsé par WPF. Un nouveau langage de programmation fait officiellement son apparition : F#
  • 7. 7 Ou trouver Visual Basic 2010 Express? Cliquer sur le lien: http://www.microsoft.com/express/downloads/ Dans la liste de lien, cliquer sur 'Visual Basic Express 2010' Puis dans la liste 'Select language", choisissez "French", une fenêtre pop-up démarre. 1.3 Visual Basic Visual Basic a été conçu pour être facile à apprendre et à utiliser. Le langage permet de créer des applications graphiques de façon simple, mais également de créer des applications véritablement complexes. Programmer en VB est un mélange de plusieurs tâches, comme disposer visuellement les composants et contrôles sur les formulaires, définir les propriétés et les actions associées à ces composants, et enfin ajouter du code pour ajouter des fonctionnalités. Comme les attributs et les actions reçoivent des valeurs par défaut, il est possible de créer un programme simple sans que le programmeur ait à écrire de nombreuses lignes de code. Dans l'IDE, les formulaires sont créés en utilisant la technique de Glisser-déposer, permettant de disposer des contrôles (boîte de saisie, case à cocher, bouton, etc.) sur le formulaire. Les contrôles possèdent tous des attributs et des gestionnaires d’évènements associés. Des valeurs par défaut sont attribuées, qui peuvent être modifiées par le programmeur. De nombreux attributs peuvent être modifiés dynamiquement lors de l’exécution, en réponse à des actions de l’utilisateur ou à des changements dans l’environnement. Les contrôles fournissent les fonctionnalités de base de l’application, les programmeurs ajoutant simplement le fonctionnel supplémentaire en insérant du code dans les gestionnaires d’évènements appropriés. Visual Basic permet de créer des exécutables (fichiers .EXE).