Rabu, 22 Januari 2014

Head First Design Patterns


Judul
: Head First Design Pattern
Penulis
: Eric Freeman & Elizabeth Freeman
Penerbit
: O’REILLY
Tahun
: 2004
Genre
: Pemprograman
Tebal
: 676 Halaman
ISBN
: 0596-007-124

Sebagai sebuah bahasa Object Oriented Programming yang sudah sangat mapan dan matang, tak heran bila kemudian menurut sebuah lembaga survei, menobatkan JAVA sebagai bahasa pemprograman yang paling banyak digunakan oleh para programmer di seluruh dunia karena ketangguhannya tersebut. Dengan segala keluwesannya, setiap aplikasi yang dibangun dalam bahasa Java dapat digunakan pada banyak flatform, mulai dari perangkat komputer, kamera digital, Personal Desktop Assistant, mobil, printer, games, ATM, smart card, peralatan medis, dan lain sebagainya.
Berbeda dengan bahasa pemprograman yang struktural, bahasa Object Oriented Programming bisa dikatakan lebih natural, dalam artian sesuai dengan cara alamiah kita berfikir. Walaupun demikian, tidak banyak lembaga-lembaga pendidikan yang menyiapkan peserta didiknya untuk memahami secara utuh bahasa Object Oriented Programming ini. Malah lebih sering kita menyaksikan, peserta didik justru harus dijejali dulu dengan bahasa pemprograman yang stuktural. Sehingga hal ini memberikan kesulitan yang cukup berarti ketika hendak beralih ke bahasa full Object Oriented Programming seperti Java ini. Imbasnya adalah, tidak banyak buku-buku dalam negeri yang mengupas tentang Object Oriented Programming ini secara menyeluruh dan benar-benar sesuai kaidah Object Oriented.
Kembali ke buku yang dibahas!
Dalam dunia Rekayasa Perangkat Lunak kita mengenal istilah flowchart untuk alur aplikasi pada pemprograman struktural, sedangkan untuk Object Oriented Programming dikenal istilah Pattern. Design pattern merupakan sebuah solusi terhadap masalah pemrograman umum yang sering dihadapi dan sering berulang terjadi dalam membangun sebuah software aplikasi. Design Pattern memberi tahu kita bagaimana mendesain sebuah class dan bagaimana membuat interaksi yang terjadi antar class sehingga class yang kita bangun bisa lebih elegan dan reusable (dapat dipakai berulang-ulang).
Pada dasarnya ada banyak sekali jenis pattern. Mulai dari pattern untuk arsitektur, creational, behavior, games pattern, bahkan pattern untuk server handal. Design Pattern memungkinkan programmer-programmer baik yang sudah mahir maupun yang masih awam dapat langsung menggunakan sebuah design tanpa harus mendesain dari awal. Dan di dalam buku ini, tentunya tidak mencakup semua pattern tersebut, hanya diambil beberapa pattern yang paling sering ditemui kemudian buku ini membahasnya secara mendetail namun dengan bahasa yang mudah difahami. Pattern-pattern yang dibahas diantaranya :
  • Observer Pattern
  • Decorator Pattern
  • Factory Pattern
  • Singleton Pattern
  • Command Pattern
  • Adapter and Facade Patterns
  • Template Method Pattern
  • Iterator and Composite Patterns
  • State Pattern
  • Proxy Pattern
  • Compound Patterns
Buku Head First Design Pattern ini tergolong buku yang unik. Dalam buku ini dijelaskan pengetahuan-pengetahuan mendasar untuk membangun sebuah software aplikasi, tapi berbeda dengan buku-buku lain yang sejenis, buku ini lebih menarik karena disampaikan dalam bentuk cerita-cerita drama disertai dengan gambar-gambar yang menarik sehingga membuat kita tidak mudah jenuh, tapi justru sebaliknya lebih memudahkan pemahaman kita tentang sebuah konsep atau design pattern.
Tak hanya itu, dalam setiap ceritanya ada pula humor-humor segar yang disisipi. Pada halaman yang lain, pembaca pula akan disuguhi puzzle dan quiz untuk menguji seberapa banyak pembaca mampu memahami apa yang telah dijelaskan sebelumnya.
Kesimpulan, Head First Design Pattern ini sangat bagus untuk dijadikan buku pegangan untuk mendalami bahasa Java khususnya design pattern-nya. Belum ditemukan buku Design Pattern yang komplit, mendasar, dan menyenangkan seperti Head First Design Pattern ini. Pembaca akan diajak memahami seluk beluk Object Oriented Programming dan menjadikan kita mampu membuat kode yang lebih mapan, mudah ditelusuri, mudah dibaca dan dikembangkan, dan tentunya reusable.

Tidak ada komentar:

Posting Komentar