Es un patrón que coordina las relaciones entre sus asociados. Permite la interacción de varios objetos, sin generar acoples fuertes en esas relaciones.
Nombre:
Mediator.
También conocido como:
Mediador.
Propósito:
Define un objeto que encapsula cómo interactúan un conjunto de objetos. Promueve un bajo acoplamiento al evitar que los objetos se refieran unos a otros explícitamente, y permite variar la interacción entre ellos de forma independiente.
Aplicabilidad:
Este patrón se utiliza generalmente cuando:
· Un conjunto grande de objetos se comunica de una forma bien definida, pero compleja.
· Dificultad para reutilizar objetos ya que nos referimos a varios objetos para comunicarnos.
· El comportamiento de muchos objetos que esta distribuido entre varias clases, puede resumirse en una o varias por subclasificación.
Estructura:

Participantes:
· Mediator: Define una interfaz para comunicarse con los otros objetos.
· ConcreteMediator: Implementa el comportamiento cooperativo entre los Objetos. Conoce a los Objetos.
· Objetos: Cada objeto conoce su mediador, y usa a este para comunicarse con otros objetos.
Consecuencias:
· Reduce la herencia.
· Desacopla a los “Colegas”.
· Simplifica los protocolos de los objetos.
· Abstrae cómo cooperan los objetos.
· Centraliza el control.
Patrones relacionados:
· Facade.
· Observer.
Etiquetas: Behavioral Patterns, Mediator, Patrones de Comportamiento