Mediator

Mediator

Patrón de diseño de comportamiento

El patrón de diseño Mediator se encarga de gestionar la forma en que un conjunto de clases se comunican entre sí, Mediator es especialmente útil cuando tenemos una gran cantidad de clases que se comunican de forma directa, ya que mediante la implementación de este patrón podemos crear una capa de comunicación bidireccional, en la cual las clases se pueden comunicar con el resto de ellas por medio de un objeto en común que funge como un mediador o intermediario.

En proyectos grandes podemos llegar a tener un problema, y es que el número de clases aumenta y con esto también aumentan las relaciones que tienen las clases con el resto de clases del proyecto. Esto puede suponer un grave problema de acoplamiento con el resto de clases de nuestro proyecto, sobre todo por que creamos canales de comunicación directos y difíciles de rastrear o depurar.

Estructura del patrón de diseño Mediator
Estructura del patrón de diseño Mediator.

Los componentes que conforman el patrón se explican a continuación:

  • Client:Componente que inicia la comunicación con el resto de los componentes por medio del mediador.
  • Components:Componentes que son parte de la red de comunicación por medio del mediador, éstos pueden ser diversos objetos que comparten el mismo mediador para comunicarse.
  • Mediador:Componente que sirve de mediador entre el resto de componentes, tiene como principal rol canalizar los mensajes entrantes al destinatario correspondiente.
Diagrama de secuencia del patrón Mediator
Diagrama de secuencia del patrón Mediator.
  1. El ComponenteA desea comunicarse con el ComponenteB y le envía un mensaje por medio del mediador.
  2. El mediador puede analizar el mensaje con fines de depuración, seguimiento o para canalizar el mensaje al destinatario.
  3. El mensaje es entregado al destinatario y regresa una respuesta al mediador.
  4. El mediador recibe la respuesta y la reedirecciona al ComponenteA.
  5. De igual forma, el proceso se puede repetir del ComponentB al ComponentA repitiendo los pasos anteriores logrando una comunicación bidireccional.

Ejemplo del mundo real

Mediante la implementación del patrón de diseño Mediator desarrollaremos una aplicación modular, la cual tendrá como punto central un Mediador, que funcionará como punto central de comunicación entre todos los módulos, eliminando la dependencia directa que existe entre los módulos para el funcionamiento.

Descubre como el patrón Mediator nos ayuda a resolver este problema
Descubre como el patrón Mediator nos ayuda a resolver este problema.

¿Sabes la importancia de los patrones de diseño?

Los patrones de diseño son la clave para crecer profesionalmente hacia la arquitectura de software, sin mencionar que los salarios son los más altos de la industria de IT, descúbrelo en este video.

🎉 Este video es parte del curso de patrones de diseño, inscríbete aquí 🎉

Acerca de este libro

Introducción a la arquitectura de software

Todo lo que acabas de ver en este artículo es solo una pequeña parte del libro Introducción a los patrones de diseño, el libro más completo de patrones de diseño en español, abarcamos 25 patrones de diseño junto con 25 proyectos del mundo real. Olvídate de aprender patrones de diseño con los ejemplos típicos de Internet de cómo hacer una pizza, animales y figuras geométricas. te invito a que veas mi libro:

Ver libro
Todos los derechos reservados ©