| Patrón | Cuándo usarlo | Consigue | Ejemplo |
| Abstract Factory | -El cliente debe ser independiente del proceso de creación.
-La aplicación debe configurarse con una o más familias. -Se desea proporcionar una colección de clases y solo revelar sus interfaces y sus relaciones, no sus implementaciones. |
-Aislar a los clientes de las clases de implementación.
-Facilita el intercambio de familias d elementos. -Promueve la consistencia entre productos. |
|
| Builder | -Una clase tiene una estructura compleja
-La clase tiene atributos dependientes entre sí (construcción por etapas) -El algoritmo para crear un objeto complejo debe ser independiente de las partes de que se compone dicho objeto y de cómo se ensamblan. |
– Permite variar la representación interna de un producto.
-Aisla el código de construcción y representación. – Proporciona un control más fino sobre el proceso de construcción. |
|
| Factory Method | -Una clase no puede prever la clase de objetos que
debe crear. -Una clase quiere que sean sus subclases quienes especifiquen los objetos que ésta crea. -Se sabe cuándo crear un objeto pero no conoce su tipo. -Se desea crear un framework extensible. -Necesita algunos constructores sobrecargados con la misma lista de parámetros |
-Proporciona enlaces para las subclases.
-Conectar jerarquías de clases paralelas. |
|
| Singleton | -Sólo puede haber una instancia de una clase
-Debe ser accesible a los clientes desde un punto de acceso bien conocido. . |
-Existe exactamente una instancia de una clase Singleton.
-Acceso controlado a la única instancia. -Mejora sobre las variables globales. |
|





Deja un comentario