Existen 3 tipos de patrones de diseño agrupados según su proposito:
-
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.