Psicossociologia do trabalho trabalho de avaliacao - versao final
Trabalho de ADAPTER.docx
-
Upload
rodolfoyalana -
Category
Documents
-
view
219 -
download
0
Transcript of Trabalho de ADAPTER.docx
INSTITUTO FEDERAL DE EDUCAÇÃO CIENCIA E TECNOLOGIA
CAMPUS CAJAZEIRAS - PB
ALUNO: RODOLFO ROCHA DA COSTA
Plugglable
Uma classe é mais reutilizável quando você minimiza as suposições que outras classes devem fazer para utilizá-la. O plugglable é um termo usado pelo Smalltalk para descrever classes com adaptação de interfaces incorporadas.
Exemplo: Numa hierarquia de diretório, os descendentes podem ser acessados com uma operação GetSubdirectories, enquanto que numa hierarquia de herança, a operação correspondente poderia ser chamada GetSubclasses. Ele deveria ser capaz de exibir ambos os tipos de hierarquias ainda que usem interfaces diferentes, ou seja, ter uma adaptação de interface incorporada a ele.
Exemplos de diagrama:
Vantagens:
Ele permite o acoplamento fraco entre a API que você exponha e o código subjacente
que se comunica com os diversos backends. O acoplamento também torna extensível e
backends adicionais podem ser escritas sem a necessidade de tocar o código da
aplicação real.
Desvantagens:
A maior fraqueza é, provavelmente, a perda de funcionalidade. Suponha BackendA tem
algumas características impressionantes que não são suportados por BackendB - no
interesse de manter uma interface consistente você está preso quer sair esses recursos
para fora ou implementá-las se em AdapterB. Isso geralmente é uma solução de menor
denominador comum.
Two-way Adapter
O adaptador de dois sentidos (two-way adapters) pode fornecer transparência para todos os clientes, onde, um objeto adaptado não oferece a interface do objeto original, por isso ele não pode ser usado para oferecer a interface do objeto original.
Vantagem: dois clientes diferentes podem ver um objeto de forma diferente.
Adaptador de duas vias pode ser acessado a via ITarget / class de interface, bem como a interface adaptee.
A solução envolve o uso de um adaptador de classe ConstaintStateVariable de dois sentidos, uma subclasse tanto de StateVariable como de ConstaintVariable que adapta as duas interfaces uma à outra.