Padrões de projeto detalhados Factory Method, Abstract Factory

Slides:



Advertisements
Apresentações semelhantes
Soluções elegantes para problemas recorrentes
Advertisements

Java – Classes Abstratas
Projeto de Sistemas de Software
Elisabeth Suescún Leandra Mara da Silva
Factory Method Projeto de Sistemas de Software
Padrão Bridge (Handle/Body)
Projeto de Sistemas de Software
Projeto de Sistemas de Software Fernando de Freitas Silva
Projeto de Sistemas de Software(PSS) Baldoino F. dos S. Neto
Strategy Projeto de Sistemas de Software
Padrões de Projeto Prototype.
Abstract Factory – Gustavo Lopes Mourad.
Projeto de Sistemas de Software Leandra Mara da Silva
Padrão Abstract Factory
Linguagens de Modelagem para SMA
1 Introdução aos padrões de projeto (GoF) Conceitos preliminares –Mecanismos de herança –Princípio de Substituição de Liskov –Acoplamento concreto x Acoplamento.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF:FactoryMethod Professores Eduardo Bezerra –
Adapter.
Abstract Factory Intenção: fornecer uma interface comum para a criação de famílias de objetos relacionados ou dependentes, sem especificar suas classes.
Singleton.
Padrões GoF - Façade.
Eduardo Bezerra Padrões GoF Eduardo Bezerra
Padrões GoF – Factory Method
Programação Orientada a Objetos
Métodos Programação II 1 Métodos de Programação II (Mestrado Integrado em Engenharia de Comunicações) 1º Ano, 2º Semestre Classes Abstractas.
DIAGRAMA DE COMPONENTES
Engenharia de Software e Sistemas de Informação e Gestão
Strategy e Template Method
Fundamentos da Engenharia de Software
Nazareno Andrade (baseado no material de Hyggo Almeida)
Singleton e Adapter Professor: Nazareno Andrade
DIAGRAMA DE CLASSE Modelagem de Software
Design Patterns Bridge
Filter Design Pattern.
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
POO II JEAN CARLO MENDES
Padrões de Projeto.
Introdução Padrões de Projeto
Trabalho Final de Padrões de Projeto
Classes Abstratas e Interfaces GX – Aula05 1.
Padrões de Projeto Abstract Factory.
Padrões de Projeto.
Tarciane Andrade Análise de Casos de Uso Tarciane Andrade
Factory.
Padrão de desenvolvimento
© 2007 by Pearson Education ©Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 18 Slide 1 Reuso de Software.
Abstract Factory Pattern Algumas aplicações precisam criar objetos de classes que podem mudar ex: elementos de um sistema GUI. –Diferentes padrões precisam.
April 05 Prof. Ismael H. F. Santos - 1 Módulo III Padrões GOF: AbstractMethod Professores Eduardo Bezerra –
Design Patterns A adoção dos padrões terá um efeito profundo e duradouro sobre a forma de escrevermos programas Ward Cunningham e Ralph Johnson.
Padrões de Projeto de Software Orientado a Objetos
Padrão Composite Definição
Objetos Distribuídos Frameworks Orientados a Objetos.
Jobson Ronan Padrões GoF Jobson Ronan
1 - Introdução a Padrões de Projeto
Padrões de Projetos Professora Lucélia. Conceitos É uma solução conhecida para um problema comum São técnicas que nos dão uma boa solução para determinados.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Padrões de Projetos Orientados a Objetos I Wolley W. Silva.
Padrões de Projeto. O que são?  Soluções provenientes de diversos projetos e utilizados por diversos programadores;  Documentados em catálogos como.
Diagrama de Classes Herança Dependências.
Padrões de Projeto Aula 9 – Padrão Adapter.
Design Patterns Mediator Projeto de Sistemas de Software Kelly Leal.
Aula 7 – Padrão Abstract Factory
Padrões Criacionais Abstraem o processo de criação de instâncias (objetos), oferecendo flexibilidade no que é criado, por quem, como e quando.
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
Análise e Design de Software Site:
1 Introdução aos Padrões de Projetos (na prática) Créditos: Lúbia Vinhas Hazel Carvalho Crato Adaptações: Prof. Nécio de Lima Veras.
1 Padrões de Projeto de Software Orientado a Objetos Programação Orientada a Objetos Prof. Fabio Kon - IME/USP.
1 Introdução aos Padrões de Projetos Créditos: Prof. Fabio Kon - IME/USP Adaptações: Prof. Nécio de Lima Veras.
Testes de Unidade. 2 Pauta Testes de Unidade; Testes de Unidade; Desenvolvimento orientado a testes; Desenvolvimento orientado a testes; Testes unitários.
Jean Carlo mendes
Transcrição da apresentação:

Padrões de projeto detalhados Factory Method, Abstract Factory Nazareno Andrade

Padrões de projeto (GoF) De criação Estruturais De comportamento

Problema-exemplo Sistema para criar e exibir currículo Um currículo tem página de rosto, página de conteúdo e página de encerramento Design?

Problema: queremos agora um currículo resumido que tem as mesmas funcionalidades do original, mas uma página de conteúdo diferente

Factory Method Intenção Aplicabilidade Definir uma interface para criar objetos, mas deixar as subclasses decidirem que classe instanciar. Permite adiar a instanciação para subclasses. Aplicabilidade classe não conhece antecipadamente a classe dos objetos que deve criar classe quer que suas subclasses especifiquem os objetos que criam

Colaborações

Problema-exemplo 2 Serviço de envio de pedidos Inicialmente enviamos sempre por email Queremos agora enviar via REST para fornecedores maiores

Problema Como garantir que, em um contexto, mensagem e serviço de mensagem serão da mesma “Família”? Isso acontece por exemplo no look-and-feel de interfaces gráficas

Solução: Abstract Factory Solução: Fornece uma interface para a criação de uma família de objetos relacionados ou dependentes sem especificar classes concretas.

UML

Aplicabilidade um sistema deve ser independente de como seus produtos são criados, compostos ou representados um sistema deve ser configurado como um produto de uma família de múltiplos produtos uma família de objetos-produto for projetada para ser usada em conjunto e você necessita garantir esta restrição você quer fornecer uma biblioteca de classes de produtos e quer revelar somente suas interfaces, não suas implementações Factory Method, Abstract Factory

Conseqüências isolamento das classes concretas torna fácil a troca de famílias de produtos promove a harmonia entre produtos é difícil, porém, suportar novos tipos de produtos Factory Method, Abstract Factory

Usos conhecidos Família de classes necessária para lidar com banco de dados Família de classes necessária para lidar com placa de rede Família de classes para lidar com look-and- feel das interfaces

Dúvidas?