Patron builder

Solo disponible en BuenasTareas
  • Páginas : 8 (1928 palabras )
  • Descarga(s) : 0
  • Publicado : 1 de septiembre de 2010
Leer documento completo
Vista previa del texto
INSTITUTO TECNOLÓGICO DE ORIZABA

CATEDRÁTICO: ANA MARÍA CHÁVEZ TREJO MATERIA: ESTILOS Y ARQUITECTURA DE SOFTWARE TEMA: PATRÓN DE DISEÑO: BUILDER HORARIO: 13:00 — 14:00 HRS. LUNES-VIERNES PRESENTA: BLANCO MURGA JANETT GARCÍA CANTÚ MA. ERIKA AURYLY

Instituto Tecnológico de Orizaba

Estilos y Arquitectura de SW – Patrón de Diseño BUILDER

Patrón de Diseño BUILDER
Un patrón describe unproblema que ocurre una y otra vez en nuestro entorno, para escribir después el núcleo de la solución a ese problema, de tal manera que esa solución pueda ser usada más de un millón de veces sin hacerlo ni siquiera dos veces de la misma forma.

Tipos de patrones de diseño
 De Creación. Muestran la guía de cómo crear objetos cuando sus creaciones requieren tomar decisiones. Estas decisionesnormalmente serán resultas dinámicamente decidiendo que clases instanciar o sobre que objetos un objeto delegará responsabilidades.  Estructurales. Describen la forma en que diferentes tipos de objetos pueden ser organizados para trabajar unos con otros.  De Comportamiento. Se utilizan para organizar, manejar y combinar comportamientos.

El patrón BUILDER
Como Patrón de diseño, el patrón Builder(Constructor) es usado para permitir la creación de una variedad de objetos complejos desde un objeto fuente (Producto), el objeto fuente se compone de una variedad de partes que contribuyen individualmente a la creación de cada objeto complejo a través de un conjunto de llamadas a interfaces comunes de la clase Abstract Builder. A menudo, el patrón builder construye el patrón Composite, un patrónestructural.

Intención
Separar el proceso de construcción de un objeto complejo de su representación, centralizando dicho proceso en un único punto, de modo que el mismo proceso de construcción pueda crear diferentes representaciones.

Motivación
Los objetos que dependen de un algoritmo tendrán que cambiar cuando el algoritmo cambia. Por lo tanto los algoritmos que estén expuestos a dichocambio deberían ser separados, permitiendo de esta manera reutilizar algoritmos para crear diferentes representaciones.

Blanco Murga Janett/García Cantú Ma. Erika Auryly

Página 2

Instituto Tecnológico de Orizaba

Estilos y Arquitectura de SW – Patrón de Diseño BUILDER

Aplicación
  El algoritmo para creación de un objeto complejo debe ser independiente de las partes que conformanel objeto y cómo están ensambladas. El proceso de construcción debe permitir diferentes representaciones del objeto que se construye.

Estructura

 

 

Builder o Especifica una interfaz abstracta para la creación de partes de un objeto Producto. Concrete Builder o Implementación del Builder. o Construye y ensambla las partes necesarias para construir productos. o Define y guarda laruta de la representación que crea. o Provee una interfaz para recuperación del producto. Director o Construye un objeto usando la interfaz Builder. Producto o Representa el objeto complejo en construcción. El ConcreteBuilder construye la representación interna del producto y define el proceso con el cual se ensambla. o Contiene las clases que definen las partes componentes, incluyendo interfacespara ensamblar las partes dentro del resultado final.

Blanco Murga Janett/García Cantú Ma. Erika Auryly

Página 3

Instituto Tecnológico de Orizaba

Estilos y Arquitectura de SW – Patrón de Diseño BUILDER

Colaboraciones
   

El Cliente crea el objeto Director y lo configura con el objeto Builder deseado. El Director notifica al constructor cuándo una parte del producto se debeconstruir. 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 representación interna de un objeto completo fácilmente. 2. Permite separar el código de la construcción y la representación. 3. Proporciona un mejor control sobre el proceso de construcción. Builder proporciona...
tracking img