A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Padrão de Projeto Builder

Apresentações semelhantes


Apresentação em tema: "Padrão de Projeto Builder"— Transcrição da apresentação:

1 Padrão de Projeto Builder
Profa. Cintia Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação – UFU Bacharel em Ciência da Computação - UFJF

2 Problema Muito parecido com o Factory Method e Abstract Factory
Separa a construção de um objeto complexo da sua representação de tal forma que o mesmo processo de construção possa criar diferentes representações. Desejo de variar a representação interna do produto que ele constrói e, ao mesmo tempo, esconder detalhes acerca de como o produto é montado.

3 Estrutura

4 Builder Separa os passos de construção de um objeto em pequenos métodos. Objeto produto (estrutura de dados -> armazena a estrutura de um carro):

5 Builder A classe Builder vai construir cada um dos dados do Produto

6 Builder A classe Builder não constrói diretamente, o algoritmo é definido em outro lugar

7 Builder classe FiatBuilder “personalizamos” o carro.
Em //Operação complexa Realização dos cálculos necessários, como busca do valor em banco de dados, calcular impostos, desvalorização. A ideia do Builder é dividir a construção em pequenos passos.

8 Builder Vamos definir a classe chamada Director, ela utiliza a estrutura do Builder para definir a construção do Produto.

9 Builder A classe Director construí o carro e depois o devolve.
As classes clientes só vão lidar com o Director e o resto fica escondido.

10

11 Builder O padrão Builder tem dois participantes principais, Director e Builder. O objeto Director, responsável pela organização geral do objeto Product, faz chamadas ao Builder. O Builder constrói o objeto complexo, chamado de Product, sob o controle do objeto Director.

12 Builder Leitor para documentos RTF que exporta para vários formatos.
Programa que converte RTF em outros formatos. Consiste de um Leitor/Parser e de um Conversor Dá suporte a diferentes conversões e formatos. Objetivos: Deve ser possível adicionar um novo formato facilmente. Separar o conversor do Leitor/Parser Deve ser possível reutilizar o algoritmo do Leitor/Parser O verdadeiro problema é que a quantidade de conversões em potencial é ilimitado. É desejável a possibilidade de adicionar uma nova conversão sem modificar o leitor.

13 Bibliografia


Carregar ppt "Padrão de Projeto Builder"

Apresentações semelhantes


Anúncios Google