Home - lenoryv/Design-Patterns GitHub Wiki

El objetivo de los patrones de diseño software es ayudar a los desarrolladores a resolver problemas comunes que nos ocurren a todos los desarrolladores de software.

"Cada patrón describe un problema que ocurre una y otra vez en nuestro entorno, para describir después el núcleo de la solución a ese problema, de tal manera que esa solución pueda ser usada más de un millón de veces sin hacerlo ni siquiera dos veces de las misma forma"

Los patrones de diseño se dividen en tres categorías principales: Creación, Estructurales y Comportamiento.

Patrones de diseño creacional

Estos patrones de diseño tienen que ver con la instanciación de clases. Este patrón se puede dividir en patrones de creación de clases y patrones de creación de objetos. Mientras que los patrones de creación de clases usan la herencia de manera efectiva en el proceso de creación de instancias, los patrones de creación de objetos usan la delegación de manera efectiva para hacer el trabajo.

Patrones de diseño estructural

Estos patrones de diseño tienen que ver con la composición de clases y objetos. Los patrones de creación de clases estructurales utilizan la herencia para componer interfaces. Los patrones de objetos estructurales definen formas de componer objetos para obtener una nueva funcionalidad.

Patrones de diseño de comportamiento

Estos patrones de diseño tienen que ver con la comunicación de objetos de Class. Los patrones de comportamiento son aquellos patrones que están más específicamente relacionados con la comunicación entre objetos.