Kegunaan umum :
Menurut
Gang of Four, Adapter patter digunakan untuk mengkonversi nama nama fungsi dan
nama agar cocok dengan yang diinginkan oleh client (kelas yang akan
menggunakan). Adapter memungkinkan kelas untuk bisa bekerja bersama sama
walaupun sebelum tidak memungkinkan Karen a perbedaan nama nama fungsi dan
variabel.
Konteks :
- - Diinginkan untuk menggunakan suatu class dengan antar muka (method-method public) tertentu tanpa mengubah definisi class tersebut. Class ini kita sebut adaptee.
- - Konteks permasalahan dimana kita ingin menggunakan class ini membutuhkan antar muka yang berbeda dari yang dimiliki class adaptee.Antarmuka yang diperlukan untuk kita sebut target.
- - Antarmuka untuk target dan antarmuka yang dimiliki adaptee secara konsep berkaitan.
Solusi :
-
Antarmuka yang dibutuhkan client(target)
didefinisikan sebagai interface dengan method-method yang dibutuhkan untuk
menyelesaikan tugas.
-
Definisikan sebuah class adapter yang
mengimplementasikan interface target ini.
-
Class adapter memiliki referensi terhadap objek
adaptee (relasi compose a.k.a HAS_A).class adapter menerjemahkan
method yang dideklarasikan pada interface target ke dalam method dari
adaptee.
-
Client membungkus objek adaptee ke dalam objek
adapter. Client melaksanakan tugasnya dengan memanggil method adapter, dan
adapter menerjemahkannya dengan memanggil method adaptee yang bersesuaian.
Desain umum class diagram Adapter :