Ninf TP Console
Ninf TP Console
Ninf TP Console
Pour rappel, un programme Java est exécutable sur une machine virtuelle, la Java Virtual Ma-
chine (JVM), qui embarque tout le nécessaire (environnement d’exécution, gestion de la mémoire,
etc) pour exécuter un programme Java. Le principal avantage d’une machine virtuelle est la porta-
bilité : une fois un programme compilé en Bytecode Java, le langage exécuté par la JVM, n’importe
quelle JVM compatible peut exécuter ce programme, et en particulier, indépendamment du système
d’exploitation sous-jaçant, et de la machine physique utilisée. L’adage Java est "Write once, run
anywhere".
Il est important de connaître ces mécanismes de base, qui sont mis en oeuvre par les différents
environnements de programmation intégrés les plus sophistiqués. Pour découvrir, connaître et mieux
comprendre ces mécanismes de base, vous devrez donc utiliser un environnement de programmation
minimal durant la première séance.
Pour réaliser les exercices de programmation en Java, vous utiliserez donc :
— 1ère séance encadrée (2h) : un simple éditeur de texte (JEdit, TextEdit, Atom. . .) pour définir
vos programmes, et l’interface en ligne de commande (dans un terminal) pour compiler et
exécuter les programmes compilés.
— Les séances suivantes : un environnement de développement intégré, Eclipse, qui intègre un
éditeur, le processus de compilation, ainsi qu’une console intégrée pour les entrées/sorties.
Eclipse fournit aussi plusieurs autres fonctionnalités avancées (débugger, suivi de tâches, test
unitaires. . .).
Ci-dessous, voici un exemple d’interactions que vous pourrez avoir dans l’interface en ligne de
commande pour consulter le répertoire courant, compiler le programme source, puis exécuter le
programme compilé.
1 $ ls # lister le répertoire courant
2 Tp0.java
3 $ javac Tp0.java # la compilation réussit, sans message d'erreur
4 $ ls # le fichier compilé est maintenant présent
5 Tp0.class Tp0.java
6 $ java Tp0 # on exécute le programme Tp0
7 # /!\ indiquer le NOM de la classe, sans extension .class
8 Hello World! # les entrées/sorties sont réalisées dans le terminal
9 $ # à la fin de l'exécution, la JVM nous rend la main