Patron Builder
Definicion:
±El
objetivo del patrón Builder es abstraer la construcción de objetos complejos de
su implementación, de modo que un cliente pueda crear objetos complejos sin
tener que preocuparse de las diferencias en su implantación.
±el patrón Builder es un patrón creacional
cuyo objetivo es instanciar objetos complejos que generalmente
están compuestos por varios elementos y que admiten diversas
configuraciones.
Cuando hablamos de “construcción” nos referimos al proceso, mientras que cuando
hablamos de “representación” nos estaremos refiriendo a los datos que componen
el objeto.
Ejemplo:
En la creación de un automóvil podríamos utilizar el patrón builder. Necesitaremos una fabrica que se encargue de la lógica del armado de los diferentes vehículos.
Comenzaremos con la clase Auto.
Por supuesto necesitaremos un motor, para componer nuestro automovil.
Tambien necesitaremos una interface que encapsule el comportamiento del automovil. y la logica del armado.
Tendremos 2 tipos de autos:
Comenzaremos con la clase Auto.
Un camaro:
y un focus:
Estas serán nuestras dos clases concretas.
El consecionario se encargará de la logica del armado del vehiculo, basandose en la interfaz builder. Este será nuestro Director Por ultimo, nuestro main sería :
C Consecuencias:
El Builder ofrece una interfaz al
Director para construir un producto y encapsula la representación interna del
producto y cómo se juntan sus partes.
Separa el código de construcción del de
representación.
Las clases que definen la
representación interna del producto no aparecen en la interfaz del Builder.
Cada ConcreteBuilder contiene el código para crear y
juntar una clase específica de producto.
Da mayor control en el proceso de
construcción.
Permite que el Director controle la
construcción de un producto paso a paso.
Sólo cuando el producto está
acabado lo recupera el director del builder.
0 comentarios:
Publicar un comentario