lunes, 8 de julio de 2013

BUSINESS DELEGATE

El Business Delegate actúa como una abstracción de negocio del lado del cliente; proporciona una abstracción para, y por lo tanto oculta, la implementación de los servicios del negocio. Utilizando Business Delegate se reduce el acoplamiento entre los clientes de la capa de presentación y los servicios de negocio del sistema. Dependiendo de la estrategia de implementación, Business Delegate podría aislar a los clientes de la posible volatilidad en la implementación del API de los servicios de negocio. Potencialmente, esto reduce el número de cambios que se deben hacer en el código de cliente de la capa de presentación cuando cambie el API del servicio de negocio o su implementación subyacente.
Sin embargo, los métodos de interface en el Business Delegate aún podría requerir modificaciones si cambia el API del servicio de negocio. Si bien es cierto, que los cambios se harán con más probabilidad en el servicio de negocio que en el Business Delegate.
Con frecuencia, los desarrolladores son excépticos cuando un objetivo de diseño como la abstracción de la capa de negocio provoca un trabajo adicional como pago por futuras ganancias. Sin embargo, utilizando este patrón o esta estrategia resulta sólo en una pequeña cantidad de trabajo extra y proporciona unos beneficios considerables. El principal beneficio es ocultar los detalles del servicio. 

Objetivo
Facilitar el acceso de la capa cliente a la capa EJB, ocultando el API de EJB.
Un objeto que reside en la capa de presentación y en beneficio de los otros componentes de la capa de presentación llama a métodos remotos en los objetos de la capa de negocios.
Aplicabilidad
Cuando se quiere proporcionar una capa de acceso al modelo que oculta la tecnología usada en su implementación.
Utilizamos un Business Delegate para reducir el acoplamiento entre los clientes de la capa de presentación y los servicios de negocio. El Business Delegate oculta los detalles de la implementación del servicio de negocio, como los detalles de búsqueda y acceso de la arquitectura EJB.

Estructura


 Participantes
Usa ServiceLocatorpara obtener una referencia al BusinessServiceFactory
Crea un BusinessService
(mediante BusinesServiceFactory) en el que delega las operaciones.

·        Ventajas
  • ·         Mejora el mantenimiento
  • ·         Permite separación de roles: desarrolladores de la capa cliente y desarrolladores de la capa EJB.
  • ·         Puede proporcionar caché para mejorar la eficiencia


 Implementación
En general, el Business Delegate puede ser una clase concreta usa métodos deben ser sincronizados.


 Requisitos de Implementación 
  •      Soporte de herencia
  •       Manejo de excepciones
  •       Comunicación remota con objetos

No hay comentarios:

Publicar un comentario