2. PREÁMBULO
Planteamiento de soluciones optimas.
Reutilización de soluciones anteriores
satisfactorias.
Abstraer las soluciones para ampliar su
aplicación.
3. INTRODUCCIÓN
Elaboración de soluciones generales para
problemas en concreto.
Los patrones abarcan todas las etapas del
desarrollo del software.
Distintos tipos de patrones, organizados
en grupos relacionados.
4. “GANG OF FOUR “
En 1994 elaboran “Design patterns:
Elements of Reusable Object Oriented
Sofware ”.
Recopilación de 23 patrones utilizados
profesionalmente.
Afianzaron el desarrollo mediante la
utilización de patrones.
5. TIPOS
CREACIONALES: Tratan de la forma de
instanciar los objetos.
ESTRUCTURALES: Describen como las
objetos pueden ser combinados formando
estructuras complejas y nuevas
funcionalidades.
COMPORTAMIENTO: Definen la
comunicación entre los objetos.
6. TIPOS: 2º nivel
CREACIONALES:
CREACIONAL DE LA CLASE: Instanciación
de la clase mediante herencia.
CREACIONAL DEL OBJETO: Patrones más
escalables y dinámicos.
7. TIPOS: 2º NIVEL
ESTRUCTURALES:
ESTRUCTURAL DE LA CLASE:
Proporcionan interfaces más útiles mediante
herencia.
ESTRUCTURAL DE OBJETOS: Creación de
objetos complejos mediante objetos
individuales para formar grandes estructuras.
8. TIPOS: 2º NIVEL
COMPORTAMIENTO:
COMPORTAMIENTO DE CLASE:
Distribuyen el comportamiento entre clases
mediante herencia.
COMPORTAMIENTO DE OBJETOS:
Analizan la comunicación entre objetos
interconectados.
11. CAPA PRESENTACIÓN
Decorating Filter / Intercepting Filter.
Front Controller/ Front Component.
View Helper.
Composite view.
Service To Worker.
Dispatcher View.
12. DECORATING FILTER
CARACTERÍSTICAS:
Maneja varios tipos de peticiones que
requieren un procesamiento determinado.
Aplicado a procesos de validación de sesión.
Elimina las comprobaciones mediante if-else
concatenados.
14. FRONT CONTROLLER
CARACTERÍSTICAS:
Acepta todas las peticiones de un cliente y
las direcciona a los manejadores apropiados.
Se divide en dos partes:
Controlador
Dispatcher
16. VIEW HELPER
CARACTERÍSTICAS:
Encapsula la lógica de acceso a bases de
datos en beneficio de la capa de
presentación.
Acceso a datos de una JSP mediante
JavaBeans.
20. SERVICE TO WORKER
CARACTERÍSTICAS:
Parecido al patrón M-V-C.
Utiliza dos subPatrones:
Front Controler para el manejador.
View Helper para la vista.
Diferencia con M-V-C: el controlador está
formado por un componente en el M-V-C.
22. DISPATCHER VIEW
CARACTERÍSTICAS:
Parecido también al patrón M-V-C.
Utilización similar del Front Controller y del
View Helper.
Diferencia: el controlador no realiza acción
sobre el helper.
24. CAPA NEGOCIOS
Business Delegate.
Value Object/ Data Transfer Object/
Replicate Object.
Session Façade/ Session Entity Façade/
Distributed Façade.
Aggregate Entity.
25. CAPA NEGOCIOS
Value Object Assembler.
Value List Handler/ Page-by-Page Iterator/
Paged List.
Service Locator.
26. BUSINESS DELEGATE
CARACTERÍSTICAS:
Un objeto de la capa de presentación llama a
métodos remotos de los objetos de la capa de
negocio.
Búsqueda del elemento de negocio.
Llamada al servicio requerido.
28. TRANSFER OBJECT
CARACTERÍSTICAS:
Encapsula la serialización de un objeto que
debe ser traspasado por la red.
Se realiza la petición, se crea el objeto
Transfer Object y éste encapsula el traspaso
del objeto requerido por el cliente.
30. SESSION FACADE
CARACTERÍSTICAS:
Crea una fachada para encapsular las
complejas interrelaciones de los distintos
elementos de negocio.
Proporciona un servicio uniforme y maneja el
flujo de ejecución de los subelementos.
34. TRANSFER OBJECT
ASSEMBLER
CARACTERÍSTICAS:
Combina el Transfer Object y el Session
Facade.
Transfer Object -> Serialización del objeto.
Session Facade -> Encapsulación de la creación
de un Objeto compuesto de varios otros.
38. SERVICE LOCATOR
CARACTERÍSTICAS:
Utilizado para abstraer toda la utilización de
JNDI y de la creación de cualquier contexto
inicial de complejo.
Encapsula la búsqueda o creación de los
objetos Home y EJB.
Proporciona un punto de control, que puede
ser llamado por múltiples clientes.
41. DATA ACCESS OBJECT
CARACTERÍSTICAS:
Consiste en utilizar un objeto como medio de
acceso a bbdd.
Abstrae y encapsula las operaciones
relacionadas con el tratamiento de la base de
datos.
43. SERVICE ACTIVATOR
CARACTERÍSTICAS:
Se utiliza para recibir peticiones y mensajes
asincronos por parte del cliente.
Busca el elemento de negocio que contiene
el método que debe invocar de forma
asíncrona.
45. INCONVENIENTES
Necesidad de análisis y estudio previo de
los distintos patrones.
Incremento del tiempo de desarrollo.
Posible ligero aumento del coste del
proyecto.
46. 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.