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

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

Abstract Factory 0821369 – Gustavo Lopes Mourad. 17/2/20142 Gustavo Lopes Mourad © LES/PUC-Rio Propósito Padrão de Criação Fornecer uma interface para.

Apresentações semelhantes


Apresentação em tema: "Abstract Factory 0821369 – Gustavo Lopes Mourad. 17/2/20142 Gustavo Lopes Mourad © LES/PUC-Rio Propósito Padrão de Criação Fornecer uma interface para."— Transcrição da apresentação:

1 Abstract Factory – Gustavo Lopes Mourad

2 17/2/20142 Gustavo Lopes Mourad © LES/PUC-Rio Propósito Padrão de Criação Fornecer uma interface para criação de famílias de objetos relacionados ou dependentes sem especificar classes concretas. Conhecido também como Kit

3 17/2/20143 Gustavo Lopes Mourad © LES/PUC-Rio Motivação Como garantir uma interface que funcione para diversos look-and-feels (Motif, Qt (KDE), Windows, etc.) ?

4 17/2/20144 Gustavo Lopes Mourad © LES/PUC-Rio Aplicabilidade Diminuir acoplamento entre sistemas Revelar somente as interfaces (sem as implementações) ao disponibilizar uma API Garantir que uma família de objetos seja sempre utilizada em conjunto

5 17/2/20145 Gustavo Lopes Mourad © LES/PUC-Rio Estrutura Diagrama de classes

6 17/2/20146 Gustavo Lopes Mourad © LES/PUC-Rio Participantes e Colaborações Participantes –Fábrica Abstrata – Interface para operações que criam Objetos- produto abstratos –Fábrica Concreta – Implementa a Fábrica Abstrata. –Produto Abstrato – Interface para um Objeto-Produto –Produto Concreto – Implementa um Objeto-Produto a ser criado –Cliente – Utiliza as interfaces Colaborações –Abstract Factory delega a criação de novos objetos para Concrete Factory –Cada Produto precisa de uma Fábrica específica

7 17/2/20147 Gustavo Lopes Mourad © LES/PUC-Rio Conseqüencias Isolamento das classes concretas –Diminuição do acoplamento entre sistemas –Controle sobre criação de novos objetos Facilita a troca de implementações –A troca de implementações não afeta a classe cliente Promove harmonia entre objetos –Assegura que um conjunto de objetos sempre trabalharão da forma a qual foram projetados Diminui a flexibilidade dos objetos criados –Interface da Fábrica deveria ser extendida

8 17/2/20148 Gustavo Lopes Mourad © LES/PUC-Rio Exemplo de Código

9 17/2/20149 Gustavo Lopes Mourad © LES/PUC-Rio Referências Gamma, E; Helm, R; Johnson, R; Vlissides, J; Design Patterns – elements of reusable object-oriented software; Addison Wesley Longman, Inc., Freeman, E; Freeman, E; Bates, B; Sierra, K; Head First Design Patterns, OReily Media, Inc

10 17/2/ Nome do Autor © LES/PUC-Rio Fim Dúvidas?


Carregar ppt "Abstract Factory 0821369 – Gustavo Lopes Mourad. 17/2/20142 Gustavo Lopes Mourad © LES/PUC-Rio Propósito Padrão de Criação Fornecer uma interface para."

Apresentações semelhantes


Anúncios Google