Padrões de Projeto Adapter
Adapter Motivação Aplicabilidade Fazer com que interfaces incompatíveis trabalhem em conjunto. Aplicabilidade Usar uma classe existente, mas sua interface não corresponde à interface que necessita. Criar uma classe reutilizável que coopera com classes em que não necessariamente tenham interfaces compatíveis. © LES/PUC-Rio © LES/PUC-Rio
Adapter Estrutura Adaptador de classe © LES/PUC-Rio
Adapter Estrutura Adaptador de objetos © LES/PUC-Rio
Adapter Participantes Target Client Adaptee Adapter Define a interface específica do domínio que Client usa. Client Colabora com objetos compatíveis com a interface de Target. Adaptee Define uma interface existente que necessita ser adaptada. Adapter Adapta a interface do Adaptee à interface de Target. © LES/PUC-Rio
Adapter Conseqüências Adaptadores de classe Adaptadores de Objeto Permite a Adapter substituir algum comportamento do Adaptee. Não é necessário endereçamento indireto adicional por ponteiros até o Adaptee. Adaptadores de Objeto Permite um único Adapter trabalhar com muitos Adaptees. O Adapter pode acrescentar funcionalidade a todos os Adaptees de uma só vez. © LES/PUC-Rio
Adapter – Exemplo © LES/PUC-Rio © LES/PUC-Rio © LES/PUC-Rio
Adapter – Exemplo © LES/PUC-Rio © LES/PUC-Rio © LES/PUC-Rio
Adapter Referências Bibliográficas [Gamma, Erich 2004] Padrões de Projeto, Porto Alegre 2000. 140 à 151 p. Wikipedia, Adapter(Padrões de Projeto, 2010), http://pt.wikipedia.org/wiki/Adapter), (visitado em Agosto, 2010). © LES/PUC-Rio © LES/PUC-Rio © LES/PUC-Rio