Ingeniera en Sistemas Computacionales
Agosto Diciembre 2014
Patrones de diseo
Patrn Builder
Del Angel Montoya Cristian David
CLAVE GDF1302
11211215
Jos de Jess Parra Galaviz
02 de Octubre de 2014
Patrn Builder.
Patrn que permite a un objeto (fuente) construir un objeto complejo especificando slo su tipo.
El objeto constructor (fuente) se compone de una serie de partes que individualmente van
formando el objeto complejo a travs de un conjunto de llamadas a interfaces comunes de la clase
Abstract Builder. As se abstrae el proceso de creacin del objeto complejo para que se puedan
crear representaciones diferentes con el mismo proceso.
Clasificacin
Patrn de diseo
Intencin
Separar la construccin de un objeto complejo de su representacin de modo que el mismo
proceso de construccin pueda crear diferentes representaciones.
Motivacin
Los objetos que dependen de un algoritmo tendrn que cambiar cuando el algoritmo cambia.
Por lo tanto los algoritmos que estn expuestos a dicho cambio deberan ser separados,
permitiendo de esta manera reutilizar algoritmos para crear diferentes representaciones.
Aplicabilidad
El patrn Builder se usa cuando:
El algoritmo para creacin de un objeto complejo debe ser independiente de las
partes que conforman el objeto y cmo estn ensambladas.
El proceso de construccin debe permitir diferentes representaciones del objeto que
se construye.
Estructura
Participantes
Builder
Especifica una interfaz abstracta para la creacin de partes de un objeto Producto
ConcreteBuilder
Construye y ensambla las partes del producto por implementacin de la
interfaz Builder.
Define y guarda la ruta de la representacin que crea.
Provee una interfaz para recuperacin del producto.
Director
Construye un objeto usando la interfaz Builder
Product
Representa el objeto complejo en construccin. El ConcreteBuilder construye la
representacin interna del producto y define el proceso con el cual se ensambla.
Incluye las clases que definen las partes componentes, incluyendo interfaces para
ensamblar las partes dentro del resultado final.
Colaboraciones
El Cliente crea el objeto Director y lo configura con el objeto Builder deseado.
El Director notifica al constructor cundo una parte del producto se debe construir.
El Builder maneja los requerimientos desde el director y agrega partes al producto.
El Cliente recupera el producto desde el constructor.
Consecuencias
1. Permite variar la representacin interna de un producto.
2. Permite separar el cdigo de la construccin y la representacin.
3. Da control refinado sobre el proceso de construccin.
Referencias
http://www.ecured.cu/index.php/Builder
http://webdocs.cs.ualberta.ca/~pfiguero/soo/PatronesDiseno/Builder/Builder.html
http://danielggarcia.wordpress.com/2014/02/19/patrones-de-creacion-ii-patron-builderconstructor/
http://infow.wordpress.com/2013/02/27/gof-patrones-de-diseno-iv-builder/