Ingénieurs 2000 2ème année
Filière -- Informatique et Réseau 2003 - 2004
Programmation Objet avec Java
1er semestre 2003
TD 1 -- Les premiers pas
Auteur Nicolas Bedon Septembre 2003
Les premiers pas

Dans cette première séance, nous faisons nos premiers pas en Java. Les notions de classes prédéfinies, d'exceptions, de tableaux d'objets, de références sont introduites. Pour prendre de bonnes habitudes, vous écrirez toutes vos classes dans des paquetages dont le nom commence par fr.umlv.monlogin.cequevousvoulez. Par exemple, vous pouvez mettre les classes que vous écrirez durant le premier td dans le paquetage fr.umlv.monlogin.td1.
On rappelle qu'il est préférable en Java que chaque classe soit définie dans un fichier qui lui est propre. Le nom du fichier doit être le nom de la classe qu'il contient, auquel on ajoute le suffixe ".java". Les noms de classe doivent être constitués de mots accolés dont la première lettre de chaque mot est une majuscule.

Les classes Object et String simplifiées afin de comprendre le comportement des méthodes compareTo et equals de l'exercice 7.

TD 2 -- Les classes définition, redéfinition, surcharge et délégation
Octobre 2003
Les classes définition, redéfinition, surcharge et délégation

Dans cette séance, nous allons écrire et utiliser nos propres classes. Les mécanismes de définition, redéfinition, surcharge et délégation vont être abordés. Pour garder de bonnes habitudes, vous écrirez toutes vos classes dans des paquetages dont le nom commence par fr.umlv.monlogin.cequevousvoulez. Par exemple, vous pouvez mettre les classes que vous écrirez durant ce td dans le paquetage fr.umlv.monlogin.td2.
De plus, on rappelle qu'il est préférable en Java que chaque classe soit définie dans un fichier qui lui est propre. Le nom du fichier doit être le nom de la classe qu'il contient, auquel on ajoute le suffixe ".java". Les noms de classe doivent être constitués de mots acolés dont la première lettre de chaque mot est une majuscule.
Enfin, chaque classe écrite doit nécessairement être accompagnée de sa documentation explicite au format Javadoc.
Nous allons nous intéresser dans cette feuille de td à la manipulation de composants géométriques localisés par des coordonnées cartésiennes dans un espace à deux dimensions, puis à trois dimensions.

TD 3 -- Les classes de conteneur, sérialisation et désérialisation
Auteur Nicolas Bedon Novembre 2003
Les classes de conteneur, sérialisation et désérialisation

Certains conteneurs (issue du package java.util) vont être utiliser au mieux, c'est-à-dire que les complexités en temps, en nombre d'opérations et en espace devront particulièrement être réfléchies et justifiées.
De plus, l'utilisation de certaines classes (provenant du package java.io) permettant de charger et de sauvegarder une structure de donnée de type Graph va être introduite ainsi que leur utilité (on pense notamment à la serialisation de cette classe).

Projet -- Algorithmes génétiques et problèmes d'optimisation
Auteurs Nicolas Bedon et Gautier Loyauté Deadline : Décembre 2003 Novembre 2003
Algorithmes génétiques et problèmes d'optimisation