Latest web development tutorials

modelo intermediario

se utilizó el modelo de intermediación (Mediator) para reducir la complejidad de la comunicación entre una pluralidad de objetos y clases. Este modelo proporciona una clase intermedia, que normalmente maneja las comunicaciones entre las diferentes clases, y soporte para débilmente acoplados, haciendo que el código sea más fácil de mantener. patrones mediador pertenecen los patrones de comportamiento.

introducción

Intención: El uso de un objeto intermediario que encapsula un conjunto de objetos interactúan los objetos de mantenimiento de intermediarios de referirse explícitamente a la otra, por lo que es la articulación flexible, y puede cambiar de forma independiente la interacción entre ellos.

Principalmente para resolver: hay una gran cantidad de objetos y relaciones entre objetos, esto conducirá inevitablemente a la estructura del sistema se vuelve muy complicado, pero si se cambia un objeto, también es necesario hacer un seguimiento de los objetos asociados a ella, y hacer que el tratamiento adecuado .

Cuándo se debe utilizar: múltiples clases acoplados entre sí, formando una estructura de red.

Cómo corregir: la estructura de red antes mencionada se separa en la estructura de estrella.

El código de la llave: la comunicación entre objetos Colega encapsular una clase por separado.

Ejemplos de aplicación: 1, antes de la adhesión de China a la OMC son los diversos países comercian entre sí estructura, complejo, es por los países de la OMC para el comercio entre sí.2, el sistema de programación de los aeropuertos. 3, framework MVC, donde C (el controlador) M (modelo) y V mediador (ver).

Ventajas: 1, lo que reduce la complejidad de la clase se convertirán en uno-a-muchos.2, cada uno de desacoplamiento entre las clases. 3, de acuerdo con los principios de Demeter.

Desventajas: gran corredor llegar a ser complejos y difíciles de mantener.

Escenarios de uso: 1 existe entre los objetos en el sistema de referencia de la relación más compleja, lo que lleva a la dependencia entre ellos confuso y difícil de volver a utilizar la estructura del objeto.2, quieren una clase media que encapsula el comportamiento de varias clases, y no quieren generar demasiadas subclases.

Nota: no se debe utilizar cuando la confusión responsabilidad.

realización

Vamos a caminar a través del intermediario ejemplo salas de chat modelo. Ejemplo, múltiples usuarios pueden enviar mensajes a las habitaciones, salas de chat chat, mensaje para todos los usuarios. Vamos a crear dos clasesChatRoomyUsuario.Objetosde usuariomanerassala de chatpara compartir sus noticias.

MediatorPatternDemo,que demuestran el uso de la clase de objetode usuariopara mostrar la comunicación entre ellos.

Mediator diagrama UML

Paso 1

Crear la clase de intermediario.

ChatRoom.java

java.util.Date importación;

ChatRoom public class {
   pública ShowMessage static void (usuario del usuario, String mensaje) {
      System.out.println (new Date (). ToString ()
         + "[" + User.getName () + "]:" + message);
   }
}

Paso 2

Crear una clase de usuario.

User.java

Usuario public class {
   private String nombre;

   Public String getName () {
      Nombre del retorno;
   }

   pública setName void (String nombre) {
      this.name = nombre;
   }

   Usuario pública (String nombre) {
      this.name = nombre;
   }

   pública sendMessage void (String mensaje) {
      ChatRoom.showMessage (esto, el mensaje);
   }
}

paso 3

Utilice el objetode usuariopara mostrar la comunicación entre ellos.

MediatorPatternDemo.java

public class {MediatorPatternDemo
   principales argumentos (String []) {public static void
      Robert usuario = new Usuario ( "Robert");
      John usuario = new Usuario ( "Juan");

      robert.sendMessage ( "Hola John !!");
      john.sendMessage ( "Hola Robert !!");
   }
}

Paso 4

Verifique la salida.

Jue Ene el 31 de 16:05:46 IST 2013 [Robert] :! Hola Juan!
Jue Ene el 31 de 16:05:46 IST 2013 [John] :! Hola Roberto!