This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
2015_2016:s3:concprogobjet:td:td2 [2018/09/16 23:02] blay [Architecture : Interface graphique et contrôleur] |
2015_2016:s3:concprogobjet:td:td2 [2018/09/16 23:08] blay [Architecture : Persistance simplifiée] |
||
---|---|---|---|
Line 117: | Line 117: | ||
- Visualisez votre code correspondant à la création d'un forum sous la forme d'un diagramme de séquences.\\ ''Outils => Code => Instant Reverse to sequence diagram'' {{ :2015_2016:s3:concprogobjet:td:tosequencediagram.png?300 |}} | - Visualisez votre code correspondant à la création d'un forum sous la forme d'un diagramme de séquences.\\ ''Outils => Code => Instant Reverse to sequence diagram'' {{ :2015_2016:s3:concprogobjet:td:tosequencediagram.png?300 |}} | ||
- Pouvez-vous décrire chacune de vos classes avec une seule phrase? Faîtes-le dans les commentaires de vos classes. | - Pouvez-vous décrire chacune de vos classes avec une seule phrase? Faîtes-le dans les commentaires de vos classes. | ||
- | ==== aide ==== | ||
- | **Pour vous aider** voici un exemple possible du programme principal dont vous pouvez vous inspirer : | ||
- | <code java> | ||
- | Controleur c = new Controleur(); | ||
- | c.start(); | ||
- | </code> | ||
- | |||
- | Et pour le contrôleur : | ||
- | <code java> | ||
- | public class Controleur { | ||
- | RegistreDeBus registre = new RegistreDeBus(); | ||
- | UI ui = new UI(); | ||
- | |||
- | public void start() { | ||
- | String commande = ui.lireCommande(); | ||
- | switch (commande.charAt(0)) { | ||
- | case 'c': | ||
- | creerBus(); | ||
- | start(); | ||
- | break; | ||
- | case 'b': | ||
- | creerBoite(); | ||
- | start(); | ||
- | break; | ||
- | ..... | ||
- | |||
- | private void creerBus() { | ||
- | String nomDuBus = ui.getNomDuBus(registre.getNomsBus()); | ||
- | boolean reussi = registre.creerBus(nomDuBus); | ||
- | if (!reussi) | ||
- | ui.afficher("Erreur le bus existe déjà"); | ||
- | else | ||
- | ui.afficher("Bus " + nomDuBus + " créé"); | ||
- | } | ||
- | </code> | ||
- | |||
===== Architecture : Persistance simplifiée ===== | ===== Architecture : Persistance simplifiée ===== | ||
- | 1- On désire sauvegarder l'ensemble des bus à chaque fin d'exécution du programme principal et recharger l'état des bus à chaque lancement du programme principal. | + | 1- On désire sauvegarder l'ensemble des forums à chaque fin d'exécution du programme principal et recharger l'état des forums à chaque lancement du programme principal. |
- | Vous pouvez utiliser le {{:2015_2016:s3:concprogobjet:td:memoire.java|code suivant}}. Pour l'utiliser il suffit que vos classes "implements Serializable'. | + | Vous pouvez utiliser {{:2018_2019:s3:concprogobjet:memoire.java|le code suivant}}. Pour l'utiliser il suffit que **vos classes "implements Serializable'**. |
**Exemple de sauvegarde :** | **Exemple de sauvegarde :** | ||
Line 167: | Line 131: | ||
<code java> | <code java> | ||
Object o = Memoire.read(NomFichier); | Object o = Memoire.read(NomFichier); | ||
- | if (o != null) | + | if (o instanceof Gestionnaire){ |
- | if (o instanceof RegistreDeBus) | + | registre = (Gestionnaire) o;} |
- | registre = (RegistreDeBus) o; | + | |
} | } | ||
</code> | </code> |