Mediator Flashcards
Explicar el patron Mediator
El patron se usa cuando se quiere enviar mensajes entre objetos que no se conocen entre sí.
El patron desacopla a los objetos, llamamos: colaboradores.
Este trabajo lo hace el mediador.
Ademas estos objetos pueden ser muy distintos.
Ejemplo: Aviones que se tienen que comunicar para aterrizar.
-En el ejemplo, no es viable que los aviones se conozcan entre si. Existe una torre de control que es el Mediador.
- Por un lado tengo la clase abstracta Colaborator, que tiene el atributo Mediator.
- De esta clase se extienden las distintas clases de aviones, con sus propios métodos para enviar y recibir mensajes.
- Por otro lado tengo una interfaz Mediator con el método enviarMensaje(String,colaborador);
- La clase concreta TorreDeControl extiende de esta interfaz.
- La clase TorreDeControl va tener lo que llamamos código spaguetti. Ella conoce a todos los aviones.
En el código spagetti:
public void enviarMensaje(String texto, Colaborador emisor) { if (emisor == avionComercial1) { avionComercial2.receive(texto); avionPrivado1.recibir(texto); ... } }