Builder - Design Pattern - GoF

4
Patrones de Diseño - Builder Separa la construcción de un objeto complejo de su representación, de manera que el mismo proceso de construcción pueda crear diferentes representaciones. Se debe usar cuando : El algoritmo para la creación de un objeto complejo debe ser independiente de las partes que conforman el objeto y cómo esta montado. El proceso de construcción debe permitir diferentes representaciones del objeto que es construido.

description

Resumen del patrón de creación Builder. codigo de ejemplo en: moleskinformatico.blogspot.com

Transcript of Builder - Design Pattern - GoF

Page 1: Builder - Design Pattern - GoF

Patrones de Diseño - Builder

Separa la construcción de un objeto complejo de su representación,

de manera que el mismo proceso de construcción pueda crear diferentes

representaciones.

Se debe usar cuando :

●El algoritmo para la creación de un objeto complejo debe ser independiente

de las partes que conforman el objeto y cómo esta montado.

●El proceso de construcción debe permitir diferentes representaciones del

objeto que es construido.

Page 2: Builder - Design Pattern - GoF

Patrones de Diseño - Builder

Estructura :

Participantes :●Builder :

especifica una interface abstracta para crear las partes de un objeto Product.

●ConcreteBuilder :

Construye y monta las partes del objeto Product implementando la interface Buider.

●Director :

Construye un objeto usando la interface Builder

●Product :

Representa el objeto complejo bajo construcción.

Page 3: Builder - Design Pattern - GoF

Patrones de Diseño - Builder

Diagrama de Interacción :

●El cliente crea el objeto Director y lo configura con el objeto Builder deseado.

●Director notifica al objeto Builder cada vez que una parte del objeto Product

deba ser construido.

●Builder maneja la petición de Director y añade las partes al objeto Product.

●El cliente recupera el objeto Product desde el objeto Builder.

Page 4: Builder - Design Pattern - GoF

Patrones de Diseño - Builder

Consecuencias :●Permite variar la representación interna del producto.

●Aisla el código para la construcción y representación.

●Hace posible un mejor control sobre el proceso de construcción.

Patrones Relacionados :●El patrón Abstract Factory es similar al patrón Builder debido a que tambien

puede construir objetos complejos.

●La principal diferencia es que el patrón Builder se centra en construir un objeto

paso por paso, patrón Abstract factory pone enfasis en familias de objetos

producto(simples o complejos).

●El patrón Builder retorna el producto como un paso final, pero el patron Abstract

Factory lo devuelve inmediatamente.

●Un Composite es lo que el contructor a menudo construye.