Biasanya dalam mengembangkan sebuah software, kita akan dihadapi sebuah masalah yang tidak pernah kita duga sebelumnya. Misalnya saja, fungsi dari suatu fitur ingin ditambah, perubahan sistem yang (mungkin) akan mengubah sebagian besar program yang telah dibuat, ingin menambah fitur software, dan lain sebagainya. Untuk meminimalisir hal tersebut, saya berencana mengembangkan aplikasi portal dengan memanfaatkan design pattern.

Apa sih design pattern?
Sebenarnya istilah ini sudah dikemukakan lebih dulu oleh Christopher Alexander, walaupun ditujukan untuk tata ruang kota. Menurutnya, setiap pattern menjelaskan sebuah masalah yang sering terjadi secara berulang-ulang pada sebuah lingkungan, dan menjelaskan sebuah solusi jitu untuk masalah tersebut, yang solusi itu bisa digunakan terus-menerus tanpa harus melakukan hal yang sama dua kali.

Walaupun pembicaraannya ditujukan untuk hal yang berbeda, C.Alexander telah menginspirasi para developer software untuk menerapkan suatu pattern yang bisa digunakan secara berulang-ulang untuk mengatasi masalah tertentu.

Nah, dalam buku Design Patterns: Elements of Reusable Object Oriented Software, ‘empat serangkai’ yang dikenal dengan sebuatan GoF (Gank of Four) mendefinisikan design pattern sebagai deskripsi komunikasi objek dan kelas yang di-customized untuk mengatasi masalah general design pada konteks tertentu. Jadi, design pattern yang dimaksud bukan design mengenai interface, link, tabel, dan segala sesuatu yang berhubungan dengan GUI alias template yang bisa langsung digunakan. Tapi lebih abstrak lagi, lebih ke arah programming.

Saat ini, design pattern yang berhasil dikembangkan banyak sekali. Tapi kebanyakan developer dalam mengembangkan sebuah software mengacu pada katalog design pattern-nya GoF. GoF ini mengkatalogkan 23 design pattern sekaligus menjelaskan satu persatu ke-23 design pattern itu.

Keduapuluh tiga design pattern itu berbeda-beda dalam hal tingkat abstraksinya. Oleh karena itu, GoF mengorganisasikannya ke dalam tiga pattern agar kita bisa mengacu ke pattern-pattern yang berhubungan. Masing2 pattern dikelompokkan berdasarkan tujuan yang menggambarkan apa yang pattern tersebut lakukan.

to be continued…


  1. ayo di.. semangat!!
    rencananya mau pake design pattern yang mana di??

  2. kira2 singleton, abstract factory, observer, dkknya rif..
    bingung eiuy bnyk bngt…

  3. martinbudi

    pake sak muanya aja mas😀

  4. Henri H.

    msh main2 di design pattern nih hahhaaha…

    pake yg sesuai keperluan lah…
    kan beda2 tuh masing2 pattern…
    yg penting tuh prinsip design pattern…
    rule no 1..code to interface not to implementation (masih terngiang2 nih)

  5. khawanz

    iy nih masih bergelut dengan design pattern..
    tapi ‘asik’…




Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s



%d bloggers like this: