Pendahuluan
Dalam dunia programmasi, berbagai jenis problem identik yang sering
dijumpai telah dikenal, di identifikasi dan lebih penting lagi telah di
ditemukan pemecahannya. GOF atau Gang Of Four sebuah study group yang
terdiri dari para praktisi informatika : Erich Gamma, Richard Helm,
Ralph Johnson dan John Vlissides mengumpulkan problem-problem tersebut
beserta metoda pemecahannya. Dengan mengkhususkan dalam hal pemograman
berorientasi objek (OO), mereka membuat sebuah buku berjudul "
Design Patterns: Elements of Reusable Object-Oriented Software"
yang berisi solusi-solusi beserta penjelasannya. Kemudian dalam
perkembangan selanjutnya solusi umum tersebut dikenal dengan nama Design
Pattern.
Secara formal design pattern dapat didefinisikan seperti berikut ini :
Design pattern adalah solusi umum terhadap masalah masalah yang sering muncul dalam applikasi software.
terjemahan bebas dari wiki
Design Pattern dalam perkembangannya mendapat antusiasme yang cukup
besar oleh para praktisi programmasi. Karena design pattern sangat
membantu dalam menghasilkan kode yang berkualitas, mudah di jaga dan
mudah dikembangkan.
Motivasi
Orang lain telah menemukan solusi dari problem anda. Karena itu untuk
mempercepat pekerjaan anda, anda tidak perlu lagi berpikir lama lama
mencari sebuah solusi yang mungkin hasilnya tidak lebih bagus dari pada
solusi yang ada. Anda hanya cukup mengadaptasi solusi umum tersebut
sesuai dengan kebutuhan anda. Mungkin ini yang dapat menjadi
pertimbangan dalam memulai sebuah konsep dari pengembangan perangkat
lunak (
software developpement).
Selain itu, dengan menguasai penggunaan dan konsep dari design
pattern anda akan menguasai pengetahuan yang menjadi dasar dari design
pattern. Pengetahuan ini tidak hanya berguna dalam konteks design
pattern saja namun juga pada konsepsi arsitektur applikasi perangkat
lunak pada umumnya.
Kemudian pada tingkat tertentu, design pattern akan menjadi sebuah
bahasa umum antara sesama programmer. Bayangkan dari pada harus
menjelaskan lengkap sebuah solusi, kita cukup dapat mengatakan sebuah
nama design pattern dan semua orang langsung mengerti.
Terakhir dan yang paling utama, design pattern akan membantu anda
dalam membuat konsep object dari applikasi yang sedang dirancang.
Metode Pembelajaran
Untuk menguasai sebuah design pattern tertentu anda tidak perlu
menghapal (baik diagram UML, maupun definisi formalnya). Tapi anda harus
mengerti apa yang menjadi dasar penggunaannya, mengenali
problemasi-problemasi apakah yang cocok dengan design pattern tersebut.
Sebelum masuk dan terintegrasi dalam kode anda. Terlebih dahulu prinsip
design pattern harus masuk dan terintegrasi di dalam otak anda.
Metoda pembelajaran yang di rencanakan adalah :
- Definisi formal dari sebuah design pattern
- Studi kasus penggunaan design pattern
- Contoh dalam bentuk kode java
- Pengembangan design pattern
- Berdiskusi di forum yang disediakan disetiap artikel
- Mengulang sendiri
Disini anda akan mendapatkan 4 point teratas. Sedangkan point terakhir tergantung pada diri anda sendiri.
Daftar Design Pattern
Daftar design pattern dibawah ini dapat bertambah seiring dengan waktu.
- Strategy
- Obsever
- Decorator
- Factory
- Singleton
- Command
- Facade
- ….
Penutup
Penulisan design pattern yang akan dilakukan tidak akan ideal. Dalam
prakteknya akan terdapat kekurangan kekurangan baik dalam penjelasan,
contoh atau materi lainnya. Untuk itu partisipasi pembaca akan sangat
bermanfaat baik dalam menambahkan hal hal yang kurang maupun mengkoreksi
hal hal yang salah atau mungkin sekedar bertanya karena memang
penjelasannya tidak begitu bagus.