Ceci est une ancienne révision du document !
Le design pattern Obserser en java
Le Design pattern Observer/Observable permet de coupler des couches logicielles en limitant leurs interactions aux seuls phénomènes observés. C'est un Design pattern utile, par exemple, pour implémenter dans le modèle MVC, les liens entre Vues et Modèle.
- La vue sera un observateur du Model.
- Le model sera observable, et permettra d'enregistrer des écouteurs (observateurs).
Exemple MVC : Liens Vue/modèle
-- Le modèle
public class Model extends Observable { private String member; /** * @return the member */ public String getMember() { return member; } public Model() { super(); } /** * @param member * the member to set */ public void setMember(String member) { this.member = member; this.setChanged(); notifyObservers(member); } }
Une vue
public class View implements Observer { @Override public void update(Observable o, Object arg) { System.out.println(o); System.out.println(arg); } }
--Exemple de programme
public class Program { /** * @param args */ public static void main(String[] args) { View v = new View(); Model m = new Model(); m.addObserver(v); m.setMember("essai"); } }