Semana 8 Flashcards
¿Cómo se caracteriza un patrón de diseño?
Como una regla de tres partes que expresa una relación entre cierto contexto, un problema y una solución.
Características de un patrón de diseño eficaz
- Resuelve un problema
- Es un concepto probado
- La solución no es obvia
- Describe una relación
- Minimiza la intervención humana (tiene un componente humano significativo).
Patrón generativo
Produce resultados predecibles, describe un fenómeno.
Describe un contexto y un problema, pero no ofrece ninguna solución clara.
Patrón no generativo
Describen problemas de diseño de base amplia que se resuelven con el empleo de un enfoque estructural.
Patrones arquitectónicos
Patrones de datos
Describen problemas recurrentes orientados a datos y las soluciones de modelado de datos que pueden emplearse para resolverlos.
Patrones de componentes (también llamados patrones de diseño)
Se enfocan a problemas asociados con el desarrollo de subsistemas y componentes, así como a la manera en la que se comunican entre sí y su ubicación dentro de una arquitectura mayor.
Patrones de diseño de la interfaz
Describen problemas comunes de interfaz de usuario y su solución con un sistema de fuerzas que incluye las características específicas de los usuarios finales.
Patrones de webapp
Enfrentan un conjunto de problemas que surgen cuando se elaboran webapps y es frecuente que
incorporen muchas de las otras categorías de patrones mencionadas.
Se centran en la “creación, composición y representación” de objetos.
Patrones creacionales
Entre los patrones creacionales se encuentran:
patrón de fábrica abstracta (, patrón de método de fabricación, patrón constructor
centraliza la decisión acerca
de para qué fábrica deben hacerse instancias.
Patrón de fábrica abstracta:
centraliza la creación de
un objeto de tipo específico para elegir una entre varias implementaciones.
Patrón de método de fabricación:
separa la construcción de un objeto complejo a partir de su representación, de modo que el mismo proceso
de construcción pueda crear representaciones distintas.
Patrón constructor
Entre los patrones estructurales se encuentran:
Patrón adaptador, patrón agregado, patrón de puente
Patrón adaptador
adapta una interfaz para una clase en otra que espera un cliente.
Patrón agregado
es una versión del patrón compuesto con métodos para agregar hijos.
Patrón de puente
desacopla una abstracción de su implementación, de modo que las dos puedan variar en forma independiente.
Entre los patrones conductutales se encuentran:
- Cadena de patrones de responsabilidad, patrón de comando, escucha de eventos.
objetos de comando que son manejados o pasados a otros objetos por medio de otros que contienen procesamiento lógico.
Cadena de patrones de responsabilidad
Objetos de comando que encierran una
acción y sus parámetros.
Patrón de comando
Se distribuyen datos a objetos registrados
para recibirlos.
Escucha de eventos
Esqueleto de una infraestructura específica para la
implementación o “miniarquitectura reutilizable”
Estructura
Diferencias entre estructuras y patrones
- Los patrones de diseño son más abstractos que las estructuras. Las estructuras están incrustadas en
el código, pero en éste sólo es posible incrustar ejemplos de patrones. - Los patrones de diseño son elementos arquitectónicos más pequeños que las estructuras. Una estructura normal contiene varios patrones de diseño, pero lo contrario nunca se cumple.
- Los patrones de diseño están menos especializados que las estructuras. Las estructuras siempre tienen un dominio particular de aplicación.