Patrones creacionales
Los patrones creacionales proporcionan varios mecanismos de creación de objetos que incrementan la flexibilidad y la reutilización del código existente.
Proporciona una interfaz para la creación de objetos en una superclase, mientras permite a las subclases alterar el tipo de objetos que se crearán.
Abstract FactoryPermite producir familias de objetos relacionados sin especificar sus clases concretas.
BuilderPermite construir objetos complejos paso a paso. Este patrón nos permite producir distintos tipos y representaciones de un objeto empleando el mismo código de construcción.
PrototypePermite copiar objetos existentes sin que el código dependa de sus clases.
SingletonPermite asegurarnos de que una clase tenga una única instancia, a la vez que proporciona un punto de acceso global a dicha instancia.