![]() |
N F P 121
|
|
TP Hebdomadaires |
reprendre le projet "AgendaTel" vu dans certains ED et inspiré du chapitre 12 de "Object Fisrt with java" - Barnes & Kolling.On veut maintenant pouvoir sauvegarder un agenda sous une forme ou une autre et on veut pouvoir charger un agenda "existant". Pour cela plusieurs solutions :
- fichier binaire
- fichier texte
- sérialisation de l'agenda
- voir les adresses téléphoniques comme des "Properties" (avec possibilité de produire une sauvegarde au format XML)
le tout est résumé dans le diagramme de classes suivant :
![]()
ici le projet BlueJ incomplet correspondant agenda téléphonique
EXERCICE : compléter le projet en implémentant les méthodes :
/** * enregistrer un agenda */ public void sauvegarderAgenda(String sauvegarde) { } public void chargerAgenda(String fichierAgenda) { }dans chacune des classes "AgendaTelBin" , "AgendaTelTxt" , "AgendaTelSerialisable" , "AgendaTelProperties" , "AgendaTelPropertiesXML" et commenter l'intéret et les défauts de chacune des solutions.
EXERCICE : modifier le diagramme de classe précédent pour mettre en évidence un pattern décorateur.