jueves, 27 de noviembre de 2008

Los Patrones de Diseño Java EE (II)

Vamos a continuar con el anterior post en el que hablábamos sobre los patrones de diseño de Java EE, recordando que quedaban por detallar la Capa de Negocios y de Integración.

Capa de Negocio

Esta es la capa que presenta un mayor número de patrones, algo bastante razonable porque es aquella que se encarga de la gestión de toda la lógica de negocio de la aplicación Java EE.
  • Business Delegate: Un objeto de la capa de presentación llama a métodos remotos de los objetos de la capa de negocio, se produce una búsqueda del elemento requerido, generando posteriormente una llamada al servicio en cuestión.
  • Transfer Object: Encapsula la serialización de un objeto que debe ser traspasado por la red. El flujo de ejecución que sigue comienza con la realización de la petición para, a continuación, crear el objeto Transfer Object que encapsulará el traspaso del objeto requerido por el cliente.
  • Session Facade: Crea una fachada para encapsular las complejas interrelaciones de los distintos elementos de negocio, proporcionando un servicio uniforme y manejando el flujo de ejecución de los subelementos.
  • Aggregate Entity: Encapsula la creación de un Bean de entidad compuesto por otros Beans de entidad.
  • Transfer Object Assember: Es una combinación del Transfer Object y el Session Facade. El primero lo emplea para serializar el objeto, mientras que el segundo llevar a cabo la encapsulación de la creación de un objeto compuesto por otros.
  • Value List Handler: Maneja la ejecución de sentencias SQL, empleando para ello Beans de Sesión.
  • Service Locator: Utilizado para abstraer toda la utilización de JNDI (Interfaz de Nombres y Directorios de Java) y de la creación de cualquier contexto inicial de complejo, además de para la encapsulación de búsqueda o creación de los objetos Home y EJB.
Capa de Integración
  • Data Access Object (DAO): Crea un objeto que es un medio para el acceso a la Base de Datos de la aplicación, de forma que se abstraen y encapsulan todas las operaciones relacionadas con el tratamiento del acceso a datos.
  • Service Activator: Se utiliza para recibir peticiones y mensajes asíncronos por parte del cliente, buscando el elemento de negocio que contiene el método que se ha de invocar.
Por último vamos a enumerar una serie de ventajas e inconvenientes que presentan este tipo de patrones de diseño.

Ventajas
  • Estandarización de la solución y consecuente posibilidad de reutilización.
  • Mejor aprovechamiento de las características la POO.
  • Interoperabilidad de los patrones.
  • Aumento del rendimiento a medio plazo.
  • Diseño de la aplicación de forma robusta.
  • Adaptada a posibles modificaciones y nuevas adiciones.
Inconvenientes
  • Necesidad de análisis y estudio previo de los distintos patrones.
  • Incremento del tiempo de desarrollo.
  • Posible ligero aumento del coste del proyecto.

No hay comentarios: