Carregar apresentação
A apresentação está carregando. Por favor, espere
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.
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
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.