lunes, 8 de julio de 2013

1.2.13 View Helper

Este patrón se centra en diversificar las responsabilidades de nuestras aplicaciones.

Contexto

El sistema crea el contenido de la presentación, lo que requiere el procesamiento de datos de negocio dinámicos.

Problema

La capa de presentación suele tender a realizar modificaciones constantemente. Si la lógica de negocio y el acceso a datos se mezclan con el formato de presentación, estos cambios son costosos y complejos de implementar. Mezclar la lógica de negocio y de sistema con el procesamiento de la vista reduce la modularidad y también proporciona una pobre separación de los roles entre los equipos de producción web y de desarrollo de software.

Solución


Basándonos en los principios del Modelo-Vista-Controlador, una vista delega sus responsabilidades de procesamiento en sus clases de ayuda, implementadas como JavaBeans o etiquetas personalizadas. Las clases de ayuda o Helpers también almacenan el modelo de datos intermedio de la vista y sirven como adaptadores de datos de negocio.


Delegar la lógica de negocio en otra capa externa a la de presentación hace que nuestra aplicación sea más modular y facilita la reutilización de componentes. Varios clientes, como controladores y vistas, podrían utilizar el mismo Helper para recuperar y adaptar estados del modelo similares para su presentación en varias vistas. De esta manera eliminamos redundancia en nuestros códigos.


El patrón View Helper se enfoca en recomendar formas de particionar las responsabilidades de nuestras aplicaciones.


Implementación y Participantes

Ø Cliente: Realiza la petición.


Ø View: Una vista representa y muestra información al cliente. La información que se muestra se recupera de un modelo. LosHelpers soportan Views encapsulando y adaptando un modelo para utilizarlo.


Ø Helper: Un Helper es el responsable de ayudar a la vista o al controlador a completar su procesamiento incluyendo la obtención de los datos requeridos por la vista y su almacenamiento en el modelo intermedio, en cuyo caso algunas veces nos podemos referir al Helper como un ValueBean.


Ø BussinesService: El servicio de negocio es un rol que cumple el servicio al que está accediendo el cliente.


Ø ValueBean: Un ValueBean es un otro nombre para un Helper que es responsable de contener el estado del modelo intermedio para que lo utilice una vista.

Diagrama de secuencia de View Helper


No hay comentarios.:

Publicar un comentario