Escolar Documentos
Profissional Documentos
Cultura Documentos
Definição
Classes
Class Adapter
Problema:
Solução:
O que o padrão propõe:
Benefícios:
Objetos
Object Adapter
Problema:
Solução:
O que o padrão propõe:
Benefícios:
Bridge
Problema:
Solução:
O que o padrão propõe:
Benefícios:
Composite
Problema:
Solução:
O que o padrão propõe:
Benefícios:
Decorator
Problema:
Solução:
O que o padrão propõe:
Benefícios:
Facade
Problema:
Solução:
O que o padrão propõe:
Benefícios:
Flyweight
Problema:
Solução:
O que o padrão propõe:
Benefícios:
Estruturais 1
Proxy
Problema:
Solução:
O que o padrão propõe:
Benefícios:
Definição
São padrões utilizados para organizar classes e objetos de forma eficiente,
facilitando a comunicação e a interação entre eles.
Classes
Class Adapter
Problema:
Necessidade de utilizar objetos de interfaces incompatíveis, de modo que os
objetos de incompatíveis se comuniquem e realizem interações entre si.
Solução:
O padrão Class Adapter propõe a criação de uma classe intermediária que atua
como um adaptador entre duas interfaces incompatíveis.
Estruturais 2
Estruturais 3
Benefícios:
Estruturais 4
Permite a comunicação entre objetos de interfaces incompatíveis.
Objetos
Object Adapter
Problema:
Necessidade de utilizar objetos de interfaces incompatíveis, de modo que os
objetos de incompatíveis se comuniquem e realizem interações entre si.
Solução:
O padrão Object Adapter propõe a criação de uma classe intermediária que atua
como um adaptador entre duas interfaces incompatíveis.
Estruturais 5
Estruturais 6
Estruturais 7
Estruturais 8
Benefícios:
Permite a comunicação entre objetos de interfaces incompatíveis.
Bridge
Problema:
Necessidade de separar um conjunto de classes intimamente ligadas.
Solução:
O padrão Bridge propõe a separação de uma abstração de sua implementação,
de modo que elas possam variar independentemente uma da outra.
Estruturais 9
A abstração contém uma referência para a implementação, permitindo que ela
possa delegar tarefas para a implementação sem conhecer os detalhes de sua
implementação.
Estruturais 10
Estruturais 11
Estruturais 12
Benefícios:
Permite a variação independente da abstração e da implementação.
Estruturais 13
Facilita a adição de novas abstrações e implementações sem afetar as
existentes.
Composite
Problema:
Necessidade de tratar objetos compostos e objetos simples de maneira
uniforme.
Solução:
O padrão Composite propõe a criação de uma hierarquia de classes que
permite tratar objetos compostos e objetos simples de maneira uniforme.
Essa hierarquia é composta por uma classe abstrata que define a interface
comum para todos os objetos da hierarquia, e duas subclasses: uma para
objetos simples e outra para objetos compostos.
A classe para objetos compostos contém uma lista de objetos filhos, permitindo
que eles possam ser tratados como um único objeto composto.
Essa hierarquia é composta por uma classe abstrata que define a interface
comum para todos os objetos da hierarquia, e duas subclasses: uma para
objetos simples e outra para objetos compostos.
Estruturais 14
A classe para objetos compostos contém uma lista de objetos filhos, permitindo
que eles possam ser tratados como um único objeto composto.
Estruturais 15
Estruturais 16
Benefícios:
Permite tratar objetos compostos e objetos simples de maneira uniforme.
Decorator
Problema:
Necessidade de adicionar funcionalidades a um objeto de forma dinâmica, sem
modificar sua estrutura interna.
Solução:
O padrão Decorator propõe a criação de uma classe decoradora que envolve
um objeto existente e adiciona funcionalidades a ele.
Estruturais 17
Estruturais 18
Estruturais 19
Estruturais 20
Benefícios:
Permite adicionar funcionalidades a um objeto de forma dinâmica, sem modificar
sua estrutura interna.
Facade
Problema:
Necessidade de reduzir a complexidade de um sistema.
Solução:
O padrão Facade propõe a criação de uma classe que fornece uma interface
simplificada para um subsistema complexo.
O cliente utiliza apenas a classe Facade para interagir com o subsistema, sem
precisar conhecer os detalhes de sua implementação.
Estruturais 21
O cliente utiliza apenas a classe Facade para interagir com o subsistema, sem
precisar conhecer os detalhes de sua implementação.
Estruturais 22
Estruturais 23
Estruturais 24
Benefícios:
Reduz a complexidade de um sistema, tornando-o mais fácil de entender e
utilizar.
Flyweight
Problema:
Necessidade de minimizar o uso de recursos quando se trabalha com um
grande volume de objetos.
Solução:
O padrão Flyweight propõe a criação de objetos leves que podem ser
compartilhados entre várias instâncias.
Esses objetos contêm apenas as informações que são únicas para cada
instância, enquanto as informações comuns são armazenadas em um objeto
compartilhado.
Esses objetos contêm apenas as informações que são únicas para cada
instância, enquanto as informações comuns são armazenadas em um objeto
Estruturais 25
compartilhado.
Estruturais 26
Estruturais 27
Estruturais 28
Estruturais 29
Benefícios:
Minimiza o uso de recursos, já que os objetos leves são compartilhados entre
várias instâncias.
Proxy
Problema:
Necessidade de implementar objetos que precisam de muitos recursos, mas
você não quer instanciar tais objetos a menos que eles sejam requisitados pelo
cliente.
Solução:
O padrão Proxy propõe a criação de um objeto intermediário que controla o
acesso a outro objeto.
O Proxy controla o acesso ao objeto real, permitindo que ele seja instanciado
apenas quando necessário.
Estruturais 30
O Proxy controla o acesso ao objeto real, permitindo que ele seja instanciado
apenas quando necessário.
Benefícios:
Reduz o uso de recursos, já que o objeto real é instanciado apenas quando
necessário.
Estruturais 31
Estruturais 32
Estruturais 33