Environnement de développement – L3 II TP 1 : Premier ( ?) contact

publicité
Environnement de développement – L3 II
TP 1 : Premier ( ?) contact avec Eclipse
Mihaela Sighireanu
(www.liafa.jussieu.fr/~sighirea/cours/edi/)
L’objectif de ce TP est de vous familiariser avec les concepts de la plateforme Eclipse vus en cours. Il vous permet également un premier contact avec
le JDK (Java Developement Kit) que nous allons étudier plus en profondeur
par la suite.
1
Lancer et configurer Eclipse
1. Lancer Eclipse à partir d’un terminal ou à partir du menu d’Applications. Un message d’erreur sur l’absence de navigateur peut apparaı̂tre ;
il s’agit d’un problème de configuration, ignorez-le pour le moment ! Le
premier lancement d’Eclipse est long car il cherche à travers le réseaux
des paramètres de lancement.
2. Choisir (pour le moment) l’emplacement de votre espace de travail à la
racine de votre FS.
3. Entrer dans l’espace Tutorial est naviguer dans les manuels offerts.
4. Revenir à la page d’introduction et aller dans l’espace de travail.
5. Dans le menu Help, choisir About Eclipse SDK. Visualiser les différents
détails proposés (plug-ins, features, options).
6. Dans Help → Preferences, visualiser la version de JRE qui est par défaut.
Changer cette version pour la version de Sun.
2
Premiers pas sous Eclipse
Pour travailler avec le JDK, il suffit de :
1. Créer un nouveau projet dont le type est “Java Project”.
2. Assurer que la version de JRE utilisée est celle de Sun.
3. Définir un nouveau paquet.
4. Créer dans le paquet des sources Java soit en partant d’un fichier vide, soit
en important des fichiers existants. Par exemple, programmer l’exemple
classique de “Hello world !” doit vous prendre quelque clics.
3
Navigation dans un code inconnu
Pour tester toutes les facilitées d’édition et navigation de code, nous allons
travailler sur un code extérieur, la bibliothèque LASER développée à l’Université de Massachusetts par l’équipe LASER (laser.cs.umass.edu). LASER est
une bibliothèque Java pour les automates finis.
Exercice 1:
Préparation
Créer deux projets (FSA et FSA Unit Test) dans votre espace de travail et puis
importer dans ces projets les sources qui se trouvent dans les répertoires ayant
les mêmes noms en /ens/sighirea/EDI/tp1/.
A la fin de cette opération, vous devez disposer de deux projets avec des
warnings mais pas d’erreurs. Si c’est pas le cas, il faut s’assurer que le JRE
utilisé est bien la version 1.5 de Sun.
La documentation de ce projet se trouve dans le projet FSA Unit Test.
Exercice 2:
Navigation
1. Visualiser tous les éléments de l’unité de compilation MutableFSA.java
du paquetage laser.fsa dans le projet FSA Unit Test. Filtrer la vue
ainsi obtenue pour visualiser que les méthodes publiques.
2. En utilisant la vue filtrée, visualiser la définition de la méthode
removeState(). Visualiser les hiérarchies des appels et des héritages de
cette méthode. Comment peut-on obtenir la pile d’appels qu’engendre
cette méthode, c’est-à-dire les méthodes que removeState() appelle.
3. Dans la même classe, on s’intéresse maintenant au champ privé
transitions. Quelle est la classe de déclaration de ce champ ? Le type de
ce champ est un ensemble ordonné de transitions étiquetées. Quelles sont
les classes non-abstraites qui peuvent être utilisées comme transitions ?
4. Faire la même étude pour les champs _states et _alphabet.
5. Quelles sont les différences entre l’unité de compilation MutableFSA.java
du projet FSA Unit Test et celle du projet FSA ?
Exercice 3:
Edition pour la correction
Les fichiers AbstractFSA.java et MutableFSA.java arrivent avec des warnings concernant principalement les importations et les types génériques.
1. Eliminer les warnings concernant les importations en utilisant l’assistant
de code de JDT. Comparer la version obtenue avec celle de l’histoire
locale.
2. Eliminer les warnings concernant les cast (3) vers de types génériques
dans le fichier MutableFSA.java. Utiliser l’assistant de code pour cela.
3. Eliminer le warning concernant la variable non lue dans le fichier
MutableFSA.java.
Téléchargement