Observer Flashcards
1
Q
Explicar el patron OBSERVER
A
- El patron identifica situaciones donde tengo un objeto que es observado por muchos otros objetos que son observadores.
- Este patron también se lo conoce como publish-suscribe.
- El patron busca desacoplar los observadores del observado (que el observado no conozca a los observadores).
Ej. Modelar un Director que guía distintos tipos de músicos, cuerda, viento y percusión. Al levantar la mano Iz. indica la los músicos de cuerda, la der. a los músicos de viento y si levanta las dos es la percusión.
- El Director extiende una clase abstracta que se llama Observado:
Esta clase conoce a todos los observadores y tiene el método notificar, que recorre la lista de observadores para notificar los cambios de estado. - Los músicos van a implementar un interfaz llamada Observadores:
La interfaz tiene la firma de un método acción(Observado).
Luego cada clase músico, implementan este método acción de acuerdo al estado del objeto Observado.
*En la implementación del método acción, cada músico va tener que castear el Observado a Director y luego preguntar por el estado del objeto para hacer algo.