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.