SlideShare uma empresa Scribd logo
1 de 5
Baixar para ler offline
Lista de controle
• Decida se "independência de plataforma" e criação de serviços são a atual fonte
de dor.
• Mapear uma matriz de "plataformas" versus "produtos".
• Definir uma interface de fábrica que consiste em um método de fábrica por produto.
• Definir uma classe derivada de fábrica para cada plataforma que encapsula todas as referências ao NovoDefinir uma classe derivada de fábrica para cada plataforma que encapsula todas as referências ao Novo
operador.
• O cliente deve retirar todas as referências a Novo, e usar os métodos de fábrica para criarO cliente deve retirar todas as referências a Novo, e usar os métodos de fábrica para criarO cliente deve retirar todas as referências a Novo, e usar os métodos de fábrica para criar
os objetos de produtos.
Regras de ouro
Às vezes, padrões de criação são concorrentes: há casos em que seja Prototype ou
Abstract Factory poderia ser usado de forma lucrativa.
Em outros momentos, eles são complementory: Abstract Factory pode armazenar um conjunto
de protótipos de que para clonar e retornar objetos produtos, Builder pode usar um dos outros
padrões de implementar que
12 | Abstract Factory
Abstract Factory | 13
componentes são construídas. Abstract Factory, Builder, e Prototype pode usar Singleton na
sua implementação.
Abstract Factory, Builder, e Prototype definir um objeto fábrica que é responsável por conhecer
e criar a classe de objetos produtos, e torná-lo um parâmetro do sistema. Abstract Factory tem o
objeto fábrica de produção de objetos de várias classes. Builder tem o objeto de fábrica construção
de um produto complexo de forma incremental usando um protocolo correspondentemente
complexa. Prototype tem o objeto de fábrica (aka protótipo) construção de um produto copiando um
objeto de protótipo.
aulas Abstract Factory são frequentemente implementadas com métodos de fábrica, mas eles também
podem ser implementadas usando Prototype.
Abstract Factory pode ser usado como uma alternativa para a fachada para esconder as classes
específicas da plataforma.
Builder centra-se na construção de uma etapa complexa objeto a passo. Abstract Factory
enfatiza uma família de objetos produtos (simples ou complexos). Builder retorna o produto como
um passo final, mas, tanto quanto o Abstract Factory está em causa, o produto é retornado
imediatamente.
Muitas vezes, projeta começar usando Factory Method (menos complicado, mais
personalizável, subclasses proliferam) e evoluir em direção Abstract Factory, Prototype, ou Builder
(mais flexível, mais complexo) como o designer descobre onde é necessária mais flexibilidade.
Adaptador
Intenção
• Converter a interface de uma classe em outra interface esperada pelos clientes. Adapter permite que
classes de trabalhar juntos que não poderia de outro modo, porque de interfaces incompatíveis.
• Enrole uma classe existente com uma nova interface.
• Impedância de corresponder a um componente antigo para um novo sistema
Problema
Um "off the shelf" componente oferece funcionalidade convincente que você
gostaria de reutilizar, mas a sua "visão do mundo" não é compatível com a filosofia e
arquitetura do sistema a ser desenvolvido.
Discussão
Reutilização sempre foi doloroso e indescritível. Uma das razões foi a tribulação de
projetar algo novo, enquanto reutiliza algo velho. Há sempre algo não muito certo entre o
velho eo novo. Pode ser dimensões físicas ou desalinhamento. Pode ser de
temporização ou de sincronização. Pode ser suposições infelizes ou padrões
concorrentes.
É como o problema da inserção de uma nova ficha eléctrica de três pinos numa tomada de dois
pinos de idade - uma espécie de adaptador ou intermediário é necessário.
14 | Adaptador
Adaptador é sobre a criação de uma abstração intermediário que traduz, ou mapas, o antigo
componente para o novo sistema. Clientes chamar métodos no objeto adaptador que os
redireciona para chamadas para o componente de legado. Esta estratégia pode ser
implementada com herança ou com agregação.
funções adaptador como um invólucro ou modificador de uma classe existente. Ele fornece um ponto
de vista diferente ou traduzido dessa classe.
Estrutura
Abaixo, um componente do retângulo legado exibição método de espera para receber "x, y, w,Abaixo, um componente do retângulo legado exibição método de espera para receber "x, y, w,Abaixo, um componente do retângulo legado exibição método de espera para receber "x, y, w,
h" parâmetros. Mas o cliente quer passar "x superior esquerdo e y" e "inferior x direita e y". Esta
incongruência pode ser reconciliado por adição de um nível adicional de falta de - ou seja, um
objecto do adaptador.
O adaptador também pode ser pensado como um "wrapper".
Adapter | 15
Exemplo
O padrão Adapter permite que classes de outra forma incompatíveis a trabalhar juntos,
convertendo a interface de uma classe em uma interface esperada pelos clientes.
chaves de caixa proporcionam um exemplo do adaptador. Uma tomada atribui a um
roquete, desde que o tamanho da unidade é a mesma. tamanhos de unidade típicos nos
Estados Unidos são 1/2" e 1/4" .
Obviamente, um 1/2" roquete unidade não irá encaixar-se um 1/4" encaixe de accionamento, a menos que uma
placa é usada. Um adaptador de 1/2" a 1/4" tem uma conexão fêmea para se ajustar sobre a 1/2" 1/2" de roquete de
accionamento, e uma conexão macho para se ajustar no 1/4" 1/4" encaixe de accionamento.
16 | Adaptador

Mais conteúdo relacionado

Semelhante a padrao de projeto1

Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPArlindo Santos
 
hibernate annotation
hibernate annotationhibernate annotation
hibernate annotationeduardo dias
 
3260 php truquesmagicos %281%29
3260 php truquesmagicos %281%293260 php truquesmagicos %281%29
3260 php truquesmagicos %281%29Juliana Nascimento
 
qualidade de código: boas práticas, princípios e padrões
qualidade de código: boas práticas, princípios e padrõesqualidade de código: boas práticas, princípios e padrões
qualidade de código: boas práticas, princípios e padrõesedgarddavidson.com
 
Padrão de Projeto - Adapter
Padrão de Projeto - AdapterPadrão de Projeto - Adapter
Padrão de Projeto - AdapterJuliana Cindra
 
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1Thyago Maia
 
Premier integration with_logix_pf drives_and_ft_view_pf755_pt
Premier integration with_logix_pf drives_and_ft_view_pf755_ptPremier integration with_logix_pf drives_and_ft_view_pf755_pt
Premier integration with_logix_pf drives_and_ft_view_pf755_ptconfidencial
 
Modularização via BPL - Abordagem Prática para DataSnap & Front-end
Modularização via BPL - Abordagem Prática para DataSnap & Front-endModularização via BPL - Abordagem Prática para DataSnap & Front-end
Modularização via BPL - Abordagem Prática para DataSnap & Front-endMario Guedes
 
Refatoração - aquela caprichada no código
Refatoração - aquela caprichada no códigoRefatoração - aquela caprichada no código
Refatoração - aquela caprichada no códigoJuciellen Cabrera
 
Aula 06 - UML e Padrões de Projeto
Aula 06 - UML e Padrões de ProjetoAula 06 - UML e Padrões de Projeto
Aula 06 - UML e Padrões de ProjetoVinícius de Paula
 

Semelhante a padrao de projeto1 (20)

Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHP
 
Factory apresentacao
Factory   apresentacaoFactory   apresentacao
Factory apresentacao
 
hibernate annotation
hibernate annotationhibernate annotation
hibernate annotation
 
Aplicações web parte 2
Aplicações web parte 2Aplicações web parte 2
Aplicações web parte 2
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
padrao de projeto2
padrao de projeto2padrao de projeto2
padrao de projeto2
 
Padroes de Projeto
Padroes de ProjetoPadroes de Projeto
Padroes de Projeto
 
3260 php truquesmagicos %281%29
3260 php truquesmagicos %281%293260 php truquesmagicos %281%29
3260 php truquesmagicos %281%29
 
3260 php truquesmagicos
3260 php truquesmagicos3260 php truquesmagicos
3260 php truquesmagicos
 
qualidade de código: boas práticas, princípios e padrões
qualidade de código: boas práticas, princípios e padrõesqualidade de código: boas práticas, princípios e padrões
qualidade de código: boas práticas, princípios e padrões
 
Padrão de Projeto - Adapter
Padrão de Projeto - AdapterPadrão de Projeto - Adapter
Padrão de Projeto - Adapter
 
Padrões de design orientado a objetos
Padrões de design orientado a objetosPadrões de design orientado a objetos
Padrões de design orientado a objetos
 
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1
Desenvolvimento de Sistemas Web com PHP Frameworks - Aula 3 - 2019.1
 
Patterns
PatternsPatterns
Patterns
 
Premier integration with_logix_pf drives_and_ft_view_pf755_pt
Premier integration with_logix_pf drives_and_ft_view_pf755_ptPremier integration with_logix_pf drives_and_ft_view_pf755_pt
Premier integration with_logix_pf drives_and_ft_view_pf755_pt
 
Cloudformation
CloudformationCloudformation
Cloudformation
 
Apostila Software Arena
Apostila Software ArenaApostila Software Arena
Apostila Software Arena
 
Modularização via BPL - Abordagem Prática para DataSnap & Front-end
Modularização via BPL - Abordagem Prática para DataSnap & Front-endModularização via BPL - Abordagem Prática para DataSnap & Front-end
Modularização via BPL - Abordagem Prática para DataSnap & Front-end
 
Refatoração - aquela caprichada no código
Refatoração - aquela caprichada no códigoRefatoração - aquela caprichada no código
Refatoração - aquela caprichada no código
 
Aula 06 - UML e Padrões de Projeto
Aula 06 - UML e Padrões de ProjetoAula 06 - UML e Padrões de Projeto
Aula 06 - UML e Padrões de Projeto
 

Mais de Walney Negreiros

Mais de Walney Negreiros (8)

padrao de projeto0
padrao de projeto0padrao de projeto0
padrao de projeto0
 
Padroes de Projetos e aplicações- parte 02
Padroes de Projetos e aplicações- parte 02Padroes de Projetos e aplicações- parte 02
Padroes de Projetos e aplicações- parte 02
 
Singleton varianca
Singleton variancaSingleton varianca
Singleton varianca
 
Pleonasmo
PleonasmoPleonasmo
Pleonasmo
 
Anafora
AnaforaAnafora
Anafora
 
Ebep alunos-apresenta~çao
Ebep alunos-apresenta~çaoEbep alunos-apresenta~çao
Ebep alunos-apresenta~çao
 
Problemas de hardware e software
Problemas de hardware e softwareProblemas de hardware e software
Problemas de hardware e software
 
INCAS
INCAS INCAS
INCAS
 

Último

PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManuais Formação
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdfGEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdfElianeElika
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxDianaSheila2
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números Mary Alvarenga
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaronaldojacademico
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxTainTorres4
 
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreCIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreElianeElika
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavrasMary Alvarenga
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - DissertaçãoMaiteFerreira4
 

Último (20)

Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envio
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdfGEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
GEOGRAFIA - ENSINO FUNDAMENTAL ANOS FINAIS.pdf
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptx
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riqueza
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
 
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreCIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavras
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - Dissertação
 

padrao de projeto1

  • 1. Lista de controle • Decida se "independência de plataforma" e criação de serviços são a atual fonte de dor. • Mapear uma matriz de "plataformas" versus "produtos". • Definir uma interface de fábrica que consiste em um método de fábrica por produto. • Definir uma classe derivada de fábrica para cada plataforma que encapsula todas as referências ao NovoDefinir uma classe derivada de fábrica para cada plataforma que encapsula todas as referências ao Novo operador. • O cliente deve retirar todas as referências a Novo, e usar os métodos de fábrica para criarO cliente deve retirar todas as referências a Novo, e usar os métodos de fábrica para criarO cliente deve retirar todas as referências a Novo, e usar os métodos de fábrica para criar os objetos de produtos. Regras de ouro Às vezes, padrões de criação são concorrentes: há casos em que seja Prototype ou Abstract Factory poderia ser usado de forma lucrativa. Em outros momentos, eles são complementory: Abstract Factory pode armazenar um conjunto de protótipos de que para clonar e retornar objetos produtos, Builder pode usar um dos outros padrões de implementar que 12 | Abstract Factory
  • 2. Abstract Factory | 13 componentes são construídas. Abstract Factory, Builder, e Prototype pode usar Singleton na sua implementação. Abstract Factory, Builder, e Prototype definir um objeto fábrica que é responsável por conhecer e criar a classe de objetos produtos, e torná-lo um parâmetro do sistema. Abstract Factory tem o objeto fábrica de produção de objetos de várias classes. Builder tem o objeto de fábrica construção de um produto complexo de forma incremental usando um protocolo correspondentemente complexa. Prototype tem o objeto de fábrica (aka protótipo) construção de um produto copiando um objeto de protótipo. aulas Abstract Factory são frequentemente implementadas com métodos de fábrica, mas eles também podem ser implementadas usando Prototype. Abstract Factory pode ser usado como uma alternativa para a fachada para esconder as classes específicas da plataforma. Builder centra-se na construção de uma etapa complexa objeto a passo. Abstract Factory enfatiza uma família de objetos produtos (simples ou complexos). Builder retorna o produto como um passo final, mas, tanto quanto o Abstract Factory está em causa, o produto é retornado imediatamente. Muitas vezes, projeta começar usando Factory Method (menos complicado, mais personalizável, subclasses proliferam) e evoluir em direção Abstract Factory, Prototype, ou Builder (mais flexível, mais complexo) como o designer descobre onde é necessária mais flexibilidade.
  • 3. Adaptador Intenção • Converter a interface de uma classe em outra interface esperada pelos clientes. Adapter permite que classes de trabalhar juntos que não poderia de outro modo, porque de interfaces incompatíveis. • Enrole uma classe existente com uma nova interface. • Impedância de corresponder a um componente antigo para um novo sistema Problema Um "off the shelf" componente oferece funcionalidade convincente que você gostaria de reutilizar, mas a sua "visão do mundo" não é compatível com a filosofia e arquitetura do sistema a ser desenvolvido. Discussão Reutilização sempre foi doloroso e indescritível. Uma das razões foi a tribulação de projetar algo novo, enquanto reutiliza algo velho. Há sempre algo não muito certo entre o velho eo novo. Pode ser dimensões físicas ou desalinhamento. Pode ser de temporização ou de sincronização. Pode ser suposições infelizes ou padrões concorrentes. É como o problema da inserção de uma nova ficha eléctrica de três pinos numa tomada de dois pinos de idade - uma espécie de adaptador ou intermediário é necessário. 14 | Adaptador
  • 4. Adaptador é sobre a criação de uma abstração intermediário que traduz, ou mapas, o antigo componente para o novo sistema. Clientes chamar métodos no objeto adaptador que os redireciona para chamadas para o componente de legado. Esta estratégia pode ser implementada com herança ou com agregação. funções adaptador como um invólucro ou modificador de uma classe existente. Ele fornece um ponto de vista diferente ou traduzido dessa classe. Estrutura Abaixo, um componente do retângulo legado exibição método de espera para receber "x, y, w,Abaixo, um componente do retângulo legado exibição método de espera para receber "x, y, w,Abaixo, um componente do retângulo legado exibição método de espera para receber "x, y, w, h" parâmetros. Mas o cliente quer passar "x superior esquerdo e y" e "inferior x direita e y". Esta incongruência pode ser reconciliado por adição de um nível adicional de falta de - ou seja, um objecto do adaptador. O adaptador também pode ser pensado como um "wrapper". Adapter | 15
  • 5. Exemplo O padrão Adapter permite que classes de outra forma incompatíveis a trabalhar juntos, convertendo a interface de uma classe em uma interface esperada pelos clientes. chaves de caixa proporcionam um exemplo do adaptador. Uma tomada atribui a um roquete, desde que o tamanho da unidade é a mesma. tamanhos de unidade típicos nos Estados Unidos são 1/2" e 1/4" . Obviamente, um 1/2" roquete unidade não irá encaixar-se um 1/4" encaixe de accionamento, a menos que uma placa é usada. Um adaptador de 1/2" a 1/4" tem uma conexão fêmea para se ajustar sobre a 1/2" 1/2" de roquete de accionamento, e uma conexão macho para se ajustar no 1/4" 1/4" encaixe de accionamento. 16 | Adaptador