2
Débuter
LE LANGAGE DE PROGRAMMATION JAVA
Le langage de programmation Java a été développé par James Gosling
chez Sun Microsystems en 1991. Son nom provient d’un terme d’argot
désignant le café. Lorsque le World Wide Web a fait son apparition sur
internet en 1993, ce langage s’est vu apporter quelques améliorations
afin de s’adapter à la programmation sur le web. Depuis lors, il est
devenu l’un des langages les plus populaires, notamment pour la pro-
grammation réseau.
Afin de mieux vous rendre compte de ce qui a pu contribuer au succès
de Java, considérez un réseau de plusieurs ordinateurs différents,
comme ceci :
Ces ordinateurs peuvent être réunis dans une même pièce, au sein d’un
réseau local ou dispersés à travers le monde et reliés
via
internet. Ce
qu’il faut retenir, c’est qu’ils tournent sur différents systèmes d’exploi-
tation et utilisent des processeurs différents. Supposons que vous sou-
haitiez écrire un programme sur la station de travail IBM qui puisse
tourner sur chacun de ces six ordinateurs.
Avant qu’un programme informatique puisse être exécuté, il doit être
converti dans le langage machine du processeur de l’ordinateur sur
lequel il doit tourner. Dans le cas des langages de programmation
comme le Pascal ou le C++, cette conversion est effectuée par un
Station de travail IBM
AIX
Motorola PowerPC
PC Dell
Windows NT
Intel Pentium II
Réseau
PC Unicent
Linux
AMD K6
PC portatif Toshiba
Windows
Intel Pentium Pro Station de travail SGI
IRIX
MIPS R10000
PC réseau Sony
Windows 2000
Intel Celeron
HUBBARD-chaps Page 2 Mardi, 27. juin 2006 12:08 12
Le langage de programmation JAVA
3
compilateur
, qui produit une version langage machine du programme
appelée
image exécutable
. Malheureusement, les processeurs possè-
dent chacun leur propre langage machine. Ainsi, l’image exécutable
produite sur la station de travail IBM ne pourra tourner sur aucun des
autres ordinateurs du réseau présenté précédemment. Pour qu’un pro-
gramme puisse tourner sur chacun de ces ordinateurs, il faudrait que le
programmeur le compile séparément sur chacune de ces machines.
Pour résoudre ce problème, Java propose pour chaque système infor-
matique non seulement un compilateur, mais également un système
logiciel appelé
Java Virtual Machine
(JVM ou machine virtuelle Java).
Le compilateur Java, appelé javac, convertit le code source Java en un
langage de niveau intermédiaire, appelé
bytecodes
. Les bytecodes,
comme le code source lui-même, sont indépendants du type d’ordina-
teur. Tous les ordinateurs utilisent le même fichier bytecode. Lorsqu’un
ordinateur souhaite exécuter un programme Java écrit sur un autre
ordinateur, il télécharge le fichier bytecode du programme et le trans-
met à sa propre JVM. La JVM traduit les bytecodes dans le langage
machine de son propre système et exécute la version convertie.
Le schéma ci-après présente à nouveau le réseau de l’exemple précé-
dent. Trois fichiers apparaissent cette fois sur l’ordinateur IBM : un
fichier de code source Java appelé
Hi.java
, le compilateur java et le
fichier bytecode
Hi.class
. Le compilateur a produit ce fichier
bytecode lorsque le programmeur a exécuté la commande
javac
Hi.class
sur l’ordinateur IBM. Par la suite, un utilisateur de l’ordina-
teur Sony (à droite) a cliqué sur une page web qui contenait des ins-
tructions pour exécuter
Hi.class
. Automatiquement, la machine Sony
a téléchargé le bytecode
Hi.class
et l’a fait tourner sur sa propre JVM
locale. La JVM de l’ordinateur Sony sait comment traduire le
bytecode dans le langage machine du processeur afin que ce dernier
puisse l’exécuter. Tout le travail préalablement effectué sur l’ordina-
teur IBM est entièrement indépendant de celui réalisé sur l’ordinateur
Sony. En fait, le fichier
Hi.class
aurait pu avoir été produit bien avant
que l’ordinateur Sony ou son processeur n’aient même été inventés.
La plupart des navigateurs web (Netscape Communicator, Internet
Explorer) intègrent JVM. Lorsque vous chargez une page web qui
contient des instructions pour exécuter un programme Java, le navi-
gateur télécharge automatiquement le bytecode et lance la JVM.
HUBBARD-chaps Page 3 Mardi, 27. juin 2006 12:08 12
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !