TP n°11 – Adaptateur et Singleton
Département Informatique
IQ-S2 – M2103 – Bases de la programmation orientée objet
I : Patron « adaptateur » : Date
Nous avons besoin, pour la classe Journal de la question suivante, de méthodes pour lire la
date courante. Or l'API Java standard ne fournit pas exactement ce dont nous avons besoin,
mais une classe [Link] plus complète. Nous allons adapter cette classe à notre
problème.
Implémentez une interface IDate dans une classe Date qui utilisera [Link]; voir le
schéma UML suivant :
II : Patron « singleton » : journal
Dans de nombreux programmes il est nécessaire de tracer le fonctionnement dans un fichier
journal (on parle en anglais de log) : la classe s'occupant de ce travail doit bien entendu être
globale, il est donc judicieux d'en faire un singleton.
Le travail consiste donc à écrire un singleton journal qui devra être capable d'envoyer dans
un fichier des chaînes de caractères. A la création du journal on doit envoyer dans le fichier
la date et l'heure courante. Le nom du fichier sera donc précisé à chaque utilisation du
singleton. Le fichier journal ne doit pas être écrasé à chaque fois, mais poursuivi. Une
fonction efface() du journal permettra d'effacer le fichier. La fonction log() permettra
d'envoyer un message (préfixé par l'heure) dans le fichier journal.
Le diagramme UML du singleton demandé est le suivant :
Conseil : utilisez [Link] pour l'écriture d'un fichier.
Testez votre singleton avec une fonction main simple.
Sylvain Rampacek Page 1