Padrões de projeto em Java (23)

Description

Mind Map on Padrões de projeto em Java (23), created by Caio Serrano on 20/04/2015.
Caio Serrano
Mind Map by Caio Serrano, updated more than 1 year ago
Caio Serrano
Created by Caio Serrano almost 9 years ago
41
1

Resource summary

Padrões de projeto em Java (23)
  1. Interface
    1. Adapter
      1. O padrão adapter cria uma ponte (não confundir com bridge) entre um output e input diferentes.
      2. Bridge
        1. O padrão bridge cria uma abstração da representação existente no projeto, ou seja, ao invez de se criar um unico tipo de função, se criar variações dessa função por sua abstração
        2. Facade
          1. Para facilitar o empapsulamento e as responsabilidades de cada classe, o padrão facade abstrai e "administra" os componentes necessarios para aquele comportamento
            1. Uma interface para outras interfaces do sistema
              1. Ajuda a diminuir a complexidade
              2. O que vc precisa?
            2. Composite
              1. O composite agrupa os objetos parte-do-todo e trata os mesmo sem destinção
                1. O padrão tem a ideia de decompor cada membro
                  1. Nesse exemplo, cada operação é decomposta
              2. Responsabilidade
                1. Singleton
                  1. Para evitar que sejam criados varios objetos do mesmo tipo desnecessariamente, o padrão singleton cria o objeto uma unica vez e quando necessario o recupera
                    1. Aumenta a funcionalidade
                      1. Com isso, não há perda de memória
                  2. Observer
                    1. Para objetos que mudam de estado, o padrão Observer oferece a solução de que ao invez de monitorar os estados, o propio objeto anuncia sua mudança
                      1. Para que procurar se vc vai me avisar?
                    2. Proxy
                      1. O padrão proxy tem a ideia de preservação do objeto, assim para não utiliza-lo diretamente, um outro objeto se faz intermédio.
                      2. Chain of responasability
                        1. Faz com que os objetos fiquem em cadeia até que eles possam ser ordenados
                          1. Olha a fila!!!!!
                        2. Flyweight
                          1. Compartilhar de forma eficiente, objetos de grande quantidade de acessos
                            1. Imagine o quanto se perde para acessar um objeto de cada vez se ele é muito requisitado
                          2. Mediator
                            1. Centraliza a responsabilidade das conmunicações entre classes
                          3. Construção
                            1. Builder
                              1. Assim como o composite, o padrão builder desmembra os elementos de construção do objeto e o constroi em partes, assim pode ocorrer variações no objeto
                                1. Fast food por exemplo!
                              2. Factory Method
                                1. O padrão encapsula a classe contrutora para permitir que cada variação de construção tenha seu encapsulamento
                                  1. O construtor escolhe o que é melhor!!
                                2. Abstract Factory
                                  1. Multiplica o padrão factory para famílias, ou seja, cada tipo de variação tem sua subvariação
                                    1. Pense assim! O factory method apenas envia o que é necessario, porém o abstract envia e recebe
                                      1. Maquinas de cartão de credito é um exemplo
                                  2. Prototype
                                    1. Usando a ideia de template (clone), este padrão a partir de um objeto ja criado, cria outro do mesmo tipo porém com variações
                                      1. Imagine criar uma nova variação de um objeto já existente
                                    2. Memento
                                      1. Este padrão faz com que o proprio objeto salve seu estado anterior, assim caso ocorra algum erro, é possível dar ROLLBACK
                                        1. UNDO the operation!
                                    3. Comportamentais
                                      1. Template Method
                                        1. Definir a ordem na qual determinados passos devem ser realizados na resolução de um problema e permitir que esses passos possam ser realizados de formas diferentes de acordo com a situação.
                                          1. Assim como o Builder, porém voltado para o comportamento
                                            1. Como um empresa
                                        2. State
                                          1. A partir de um contexto, o objeto deve mudar
                                            1. Taximetro!
                                          2. Command
                                            1. Controlar as chamadas a um determinado componente, modelando cada requisição como um objeto
                                            2. Strategy
                                              1. O padrão permite a variação do algoritimos para variados problemas
                                                1. Imagine ter um algoritimo que resolve variados problemas de um contexto
                                              2. Iterpreter
                                                1. Criar diversas interpretações para uma linguagem
                                                  1. A música
                                              3. Extensão
                                                1. Decorator
                                                  1. Adicionar funcionalidade a um objeto dinamicamente.
                                                    1. Na hora!
                                                      1. Composite Dinamico
                                                  2. iterator
                                                    1. Percorre uma coleção de objetos sem expor
                                                      1. Sem ferir o encapsulamento
                                                    2. Visitor
                                                      1. Permite atualização para cada tipo especifico de objeto
                                                        1. Imagine atualizar somente os salários dos contadores!
                                                    Show full summary Hide full summary

                                                    Similar

                                                    Neurofeedback
                                                    Matheus William
                                                    PADRÕES DE BELEZA
                                                    Larissa Teixeira
                                                    AO02_MapaMental_Lidersson
                                                    Lidersson gonçalves de oliveira
                                                    LEGISLAÇÃO DE ALIMENTOS
                                                    MARCIA CRISTINA MAIA DE AZEVEDO
                                                    Revisão Padrão de Projeto
                                                    João Miguel
                                                    PADRÃO DE PROJETO - ADAPTER
                                                    Otavio Costa
                                                    Padrões De Projetos - GoF
                                                    Bruna Silva
                                                    Neurofeedback
                                                    Elisa Streck
                                                    PADRÃO DE PROJETO ADAPTER (WRAPPER)
                                                    Otavio Costa
                                                    Nazi Germany Dates
                                                    Georgina.Smith
                                                    Cell Structure
                                                    megan.radcliffe16