1. Magnolia Camila Arbeláez Polindara
Michael Farid Fernández Rivera
PATRONES DE COMPORTAMIENTO:
PATRÓN OBSERVADOR
INTENCIÓN Definir una dependencia uno a muchos entre objetos, de
manera que cuando cambian su estado le notifican a
todos los objetos dependientes a ellos el cambio de su
estado.
PROBLEMA QUE SOLUCIONA Se tiene un objeto que depende del cambio de estado de
otro objeto.
SOLUCIÓN PROPUESTA Crear una serie de interface y clases concretas , para que
luego en ellas sean implementadas.
DIAGRAMA DE CLASES
DIAGRAMA DE SECUENCIA
PARTICIPANTES ● Observable: Interfaz o clase abstracta que define
las operaciones para adjuntar y desacoplar
observadores al cliente. En el libro GOF, esta clase
/ interfaz se conoce como Asunto .
● Concrete Observable: Clase observable de
hormigón. Mantiene el estado del objeto y cuando
se produce un cambio en el estado, notifica a los
observadores adjuntos.
2. Magnolia Camila Arbeláez Polindara
Michael Farid Fernández Rivera
● Observer: Interfaz o clase abstracta que define las
operaciones que se utilizarán para notificar este
objeto.
● ConcreteObserverA, ConcreteObserver2
implementaciones de Observer concretas .
APLICABILIDAD ● cuando una modificación en el estado de un objeto
requiere cambios de otros, y no se desea que se
conozca el número de objetos que deben ser
cambiados.
● se quiere que un objeto sea capaz de notificar a
otros objetos sin hacer ninguna suposición acerca
de los objetos notificados y cuando una abstracción
tiene dos aspectos diferentes, que dependen uno
del otro
CONSECUENCIAS ● El acoplamiento entre los observadores y los temas
es abstracto y mínimo.
● Soporta comunicación de tipo broadcast.
● Se pueden generar actualizaciones inesperadas,
difíciles de deducir por los observadores.