1.3 L’environnement de travail 1 INTRODUCTION
– Un compilateur (ou “semi-compilateur”), g´en´erant du code `a destination de la machine virtuelle.
1.3.1 La machine virtuelle JAVA
Cette couche isole les programmes JAVA des contraintes de l’environnement local, assurant ainsi leur
portabilit´e. Pour qu’un syst`eme puisse faire tourner des programmes JAVA (quels qu’ils soient), il faut et
il suffit que cette machine virtuelle (que dans la suite nous nommerons JVM, pour Java Virtual Machine)
ait ´et´e port´ee sur le syst`eme en question.
A l’heure actuelle, la JVM est port´ee sur la totalit´e des plate-formes “classiques” de d´eveloppement,
du mac au gros serveur UNIX en passant par les diverses d´eclinaisons de windows, linux etc.
La JVM est activ´ee
– soit explicitement, `a l’aide de la commande java suivie du programme qu’on souhaite ex´ecuter (le
nom d’une classe contenant une m´ethode main),
– soit implicitement dans un environnement plus riche qui la contient (par exemple, d´eclenchement
automatique d’une applet dans un navigateur web).
1.3.2 Le compilateur
Il s’agit en fait d’un semi-compilateur, dans la mesure o`u il ne g´en`ere pas du langage machine (qui
serait d´ependant de la plate-forme, donc non portable), mais un code interm´ediaire portable appel´e
bytecode.
Le compilateur est activ´e explicitement, en utilisant la commande javac suivie du ou des fichiers
sources `a compiler.
1.3.3 Le “documenteur”
Les concepteurs de JAVA ont eu l’initiative de proposer un m´ecanisme permettant d’extraire, dans le
code source lui-mˆeme, certains des commentaires qui s’y trouvent, puis de les traiter afin d’en produire
une documentation au format HTML, avec liens hypertextuels.
Tout constituant d’un programme (paquetage, classe, m´ethode, variable) peut ˆetre document´e. Pour
les d´etails, nous renvoyons le lecteur `a
http ://java.sun.com/j2se/javadoc/index.html
mais nous d´ecrivons tout de mˆeme ici les grands principes d’utilisation de cet outil, appel´e javadoc.
Les commentaires destin´es `a Javadoc commencent par “/**” et se terminent par “*/”. Tout ce qui
est situ´e `a l’int´erieur sera interpr´et´e comme du HTML, `a l’exception de quelques mots r´eserv´es dont nous
donnons plus loin un sous-ensemble fr´equemment utilis´e.
Tout mot r´eserv´e doit apparaˆıtre en d´ebut de ligne, exemple :
/**
* This is a <em>doc</em> comment.
* @see java.lang.Object
*/
Les commentaires relatifs `a une classe (resp. une m´ethode, une variable etc.) doivent apparaˆıtre juste
au-dessus de la d´efinition de la classe (resp. m´ethode, variable, etc.)
Quelques mots r´eserv´es utiles sont r´eunis dans le tableau ci-dessous. Tous commencent par “@”. Pour
chacun d’eux, on a indiqu´e la version du JDK `a partir de laquelle ils sont d´efinis.
mot-cl´e version signification
@author 1.0 l’auteur du fichier
@deprecated 1.0 code appel´e `a disparaˆıtre
@exception 1.0 code lan¸cant une exception
@param 1.0 param`etre de m´ethode
@return 1.0 valeur de retour
@see 1.0 lien vers un autre code
@since 1.1 anciennet´e du code
@version 1.0 version du code/document
3