son una herramienta muy útil. Cualquier programador debería conocer, por lo menos, los patrones
más utilizados
Los patrones de diseño son soluciones para problemas típicos y recurrentes que nos podemos
encontrar a la hora de desarrollar una aplicación.
si queremos desarrollar aplicaciones robustas y fáciles de mantener, debemos cumplir ciertas
"reglas"
aunque estas reglas de diseño son recomendables (muy recomendables), no son obligatorias.
Siempre podemos decidir no aplicarlas. Aunque si no lo hacemos, hay que ser conscientes de la
razón de no aplicarlas y de sus consecuencias.
Los patrones de diseño nos ayudan a cumplir muchos de estos principios o reglas de diseño
Patrones de diseño hay muchos. Muchísimos. Y siguen apareciendo patrones nuevos cada poco
tiempo. El desarrollo de aplicaciones es una disciplina en constante cambio. Por tanto los problemas
a los que nos enfrentamos los desarrolladores también cambian. Así que las herramientas utilizadas,
también se van actualizando y mejorando.
Es imposible conocer todos los patrones de diseño. Lo más útil es tener un catalogo de patrones que
podamos consultar. A la hora de desarrollar una aplicación, podremos consultar nuestro catálogo
buscando patrones que nos ayuden a solucionar problemas de diseño concretos.
Existen diversas maneras de agrupar los patrones de diseño. Quizá la más extendida es agruparlos
según su propósito. En este caso tendríamos las siguientes categorías:
Patrones creacionales
utilizados para instanciar objetos, y así separar la implementación del cliente de la de los objetos
que se utilizan. Con ellos intentamos separar la lógica de creación de objetos y encapsularla.
Patrones de comportamiento
se utilizan a la hora de definir como las clases y objetos interaccionan entre ellos.
Patrones estructurales
utilizados para crear clases u objetos que incluidos dentro de estructuras más complejas.