1 / 22

Padrões de Projeto

Padrões de Projeto. Padrões. Padrões de Padrões. Acoplamento Coesão Reuso de classes e objetos Interface x Implementação Herança de classe x Herança de interface Composição x Herança Delegação. Padrões abordados. Singleton Prototype Factory Method Abstract Factory Adapter

perry
Download Presentation

Padrões de Projeto

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Padrões de Projeto

  2. Padrões de Projeto Padrões

  3. Padrões de Projeto Padrões de Padrões • Acoplamento • Coesão • Reuso de classes eobjetos • Interface xImplementação • Herança de classexHerança de interface • ComposiçãoxHerança • Delegação

  4. Padrões de Projeto Padrõesabordados • Singleton • Prototype • Factory Method • Abstract Factory • Adapter • Composite • Decorator • Facade • Proxy • Command • Observer • State • Strategy • Visitor

  5. Padrões de Projeto Singleton • Únicainstância de umaclasse • Pattern ou Anti-pattern? • Sincronização • Classloading • Distribuição • Escopo • [Não] coleta de lixo • Testes • Reuso

  6. Padrões de Projeto Prototype • Clonagem • Fundo (deep ) xRaso (shallow) • Collections • Transients

  7. Padrões de Projeto Factory Method • Criarobjetossemespecificar a classeconcreta • Polimórficosounão

  8. Padrões de Projeto Abstract Factory • Criarfamilias de objetosrelacionados • Independênciadacamadaabaixo • Custo de complexidade

  9. Padrões de Projeto Abstract Factory

  10. Padrões de Projeto Adapter • Reusoquandouma interface diferenteéesperada

  11. Padrões de Projeto Composite • Estruturas parte-todo (árvore)

  12. Padrões de Projeto Decorator • Adicionarresponsabilidadesemadicionardependência

  13. Padrões de Projeto Facade • Isolaroclientedacomplexidade de um subsistema

  14. Padrões de Projeto Proxy • “Super” referência • Remoting • Lazy • Secure … • Dynamic Proxy • Interface implementadaem runtime • InvocationHandler

  15. Padrões de Projeto Command • Execuçãoflexível • Agendamento • Enfileiramento • Persistência • Compensação • Composição

  16. Padrões de Projeto Observer • Publish / Subscribe • Modelos Push / Pull • java.util.Observer • java.util.Observable Notificação Alteração Model a(10,45) b(12,24)

  17. Padrões de Projeto State • Alterarcomportamentosemalterarclasse

  18. Padrões de Projeto Strategy • Definiralgorítmosintercambiáveis

  19. Padrões de Projeto Visitor • Isolaroperações do modelo • Evita “poluição” do modelo. • Permiteadicionar novas operaçõessemalteraromodelo • Alterações no modelo, entretanto, podem ser trabalhosas

  20. Padrões de Projeto Combos • Singleton + [Abstract] Factory • Command + Composite + Decorator • DAO (Value Object + Abstract Factory + Broker)

  21. Padrões de Projeto Anti-patterns • Big Ball Of Mud • Gas Factory • Interface Bloat • God Object • Magic Pushbutton • Object Orgy • Accidental Complexity http://c2.com/cgi/wiki?AntiPattern http://www.manning.com/tate/

  22. Padrões de Projeto Dúvidas?

More Related