Adapter
Professora: Tâmara
Disciplina: Padrões de Projeto
Alunos: José Alfredo, Jorge Fadh, Romulo e Emanuel Neto.
PADRÃO DE PROJETO ADAPTER
Bacabal – MA
19 de Janeiro de 2015
PADRÃO DE PROJETO ADAPTER
Neste texto, tentaremos realizar algumas tarefas impossíveis, como encaixar um pino quadrado num furo redondo. Isso parece impossível? Não quando temos padrões de projeto. Lembra do padrão Decorator? Nós envelopamos objetos para atribuir novas responsabilidades a eles. Agora vamos envelopar alguns objetos, mas com outro objeto. Para que possamos adaptar um projeto que espera uma determinada interface a uma classe que implementa uma interface diferente.
Digamos que você tenha que encaixar uma nova biblioteca de classes, adquirida de outro fornecedor, em um sistema de software já existente, mas as interfaces projetadas por esse fornecedor sejam diferentes das adotadas pelo fornecedor anterior:
Nesse caso, você não quer resolver o problema mudando o código existente (e nem pode mudar o código do novo fornecedor). O que fazer? Você pode usar a padrão Adapter, criando uma classe que adapte a interface do novo fornecedor ao formato que o sistema deseja encontrar.
Sem Adapter
Com Adapter
O adaptador funciona como um intermediário, recebendo as solicitações do cliente e convertendo-as para um formato que faça sentido para as classes do novo fornecedor. Explicando o padrão Adapter:
1. O cliente faz uma solicitação ao adaptador chamando um método nele através da interface-alvo.
2. O adaptador traduz a solicitação para uma ou mais chamadas de método no adaptador usando a interface desse objeto.
3. O cliente recebe os resultados da chamada sem jamais perceber que há um adaptador fazendo a tradução.
Conceito
Adapter é um adaptador, ou seja, um padrão estrutural que adapta uma interface. Intenção
Converter a interface de uma classe em outra