Java pour l'informatique industrielle
Chapitre 1. Introduction aux objets
Chapitre 2. Les structures de contrôle
Chapitre 3. Unifier et réutiliser
Chapitre 4. Modèle, Vue et Contrôle
4.1. Motivation et fonctionnement
4.2. L'environnement graphique de Java
4.3. La gestion des événements
4.4. Cas d'étude 1 - sans notification
4.5. Cas d'étude 2 - avec notification
4.6. Nouveau modèle du compteur
4.6.1. Avec ou sans notification
4.6.2. Le pattern Décorateur
4.6.3. Le CompteurObservateur
4.6.4. Plusieurs écouteurs
Chapitre 5. Les entrées/sorties
Page d'accueilTable des matièresNiveau supérieurPage précédenteBas de la pagePage suivante

4.6.1. Avec ou sans notification

Comparons la classe Compteur avant et après avoir inséré le mécanisme de notification.

class Compteur implements ICompteur { private int etat; public int getEtat() { return this.etat; } public void incrementer() { this.etat += 1; this.notifie(); } void notifie() { if (this.ecouteur != null) this.ecouteur.miseAJour(); } private ICompteurListener ecouteur; void addCompteurListener(ICompteurListener nouveau) { this.ecouteur = nouveau; } }

On constate qu'on a ajouté un morceau de code qui est indépendant de la façon de compter. On aurait pu faire exactement la même chose sur CompteurModulo. Ce mécanisme de notification est donc orthogonal à la gestion de l'état, on peut le dissocier du compteur.

Page d'accueilTable des matièresNiveau supérieurPage précédenteHaut de la pagePage suivante