diambil dari buku : "Beginning Java Objects From Concepts to Code, Second Edition"
yang ditulis oleh : Barker,jackuie
isi dari buku tersebut saya terjemahkan dengan bantuan mbah google , jadi mohon maaf bila ada kata-kata yang kurang dipahami tetapi sudah saya perbaiki semaksimal saya .
berikut isi dari buku tersebut sesuai dengan judul diatas:
Sering sekali,
saya bertemu pengembang software di tempat saya kerja, di kantor klien, di
konferensi profesional, dan di kampus-kampus yang telah berusaha untuk
menguasai suatu bahasa pemrograman berorientasi objek seperti Java dengan
mengambil kursus di java, membaca buku tentang Java, atau menginstal dan
menggunakan lingkungan Java terintegrasi pengembangan (IDE) seperti JBuilder
atau Sun One Studio. Namun, ada sesuatu fundamental yang hilang dari hampir semua
pendekatan ini: pemahaman dasar dari semuanya tentang benda apa dan, lebih
penting, pengetahuan tentang bagaimana struktur aplikasi perangkat lunak dari
bawah ke atas untuk membuat sebagian besar benda-benda.
Bayangkan bahwa
Anda telah diminta untuk membangun rumah, dan bahwa Anda mengetahui dasar-dasar
dari konstruksi rumah. Bahkan, Anda seorang pembangun rumah terkenal di dunia
yang mempunyai permintaan tinggi dalam jasanya. Anda telah membangun rumah dari
setiap gaya arsitektur yang layak, menggunakan setiap jenis yang dikenal Bahan
bangunan: batu bata, kayu, batu, logam, dll Jadi, ketika klien Anda memberitahu
Anda bahwa dia ingin Anda menggunakan tipe baru bahan konstruksi bahwa ia akan
memberikan/menyediakannya, Anda senang untuk membantu.
Pada pembangunan
hari ini untuk memulai, sebuah truk menariknya di lokasi pembangunan dan
membongkar tumpukan besar yang tampak aneh, blok biru berbentuk bintang dengan
lubang di tengah. Anda benar-benar bingung! Anda telah membangun rumah yang tak
terhitung jumlahnya menggunakan bahan yang lebih akrab, tetapi Anda tidak
memiliki petunjuk tentang cara merakit sebuah rumah menggunakan bintang biru.
Garuk-garuk
kepala, Anda mengeluarkan palu dan beberapa paku dan mencoba memaku-bintang
biru bersama-sama seperti jika Anda bekerja dengan kayu, tapi bintang tidak
cocok bersama dengan sangat baik. Anda kemudian mencoba untuk mengisi
kekosongan dengan mortir yang sama yang akan Anda gunakan untuk melekat batu
bata satu sama lain, namun mortar tidak menempel bintang-bintang biru dengan
baik. Karena Anda bekerja di bawah ketat biaya dan jadwal kendala untuk
membangun rumah ini untuk klien Anda, namun (dan karena kau terlalu malu untuk
mengakui bahwa Anda, sebagai homebuilder ahli, tidak tahu bagaimana bekerja
dengan bahan-bahan modern) , Anda terus maju. Akhirnya, Anda menyelesaikan
dengan sesuatu yang tampak (di permukaan, setidaknya) seperti rumah.
Klien Anda
datang untuk memeriksa pekerjaan, dan dia sangat kecewa. Salah satu alasan dia
memilih bintang biru sebagai bahan konstruksi adalah bahwa mereka sangat hemat
energi namun, karena Anda menggunakan paku dan mortir untuk merakit bintang,
mereka telah kehilangan banyak kemampuan bawaan mereka untuk melindungi rumah.
Untuk
mengimbangi, klien Anda meminta Anda untuk mengganti semua jendela di rumah
dengan tiga jendela panel kaca thermal sehingga mereka akan memungkinkan lebih
sedikit panas untuk melarikan diri. Anda panik pada point-menukar jendela
mengharuskan Anda untuk benar-benar merobek dinding terpisah, menghancurkan
rumah.
Ketika Anda memberitahu
pelanggan Anda ini, dia pergi balistik! Alasan lain ia memilih bintang biru
sebagai bahan konstruksi adalah karena modularitas mereka, dan karenanya
kemudahan menampung perubahan desain tetapi, karena cara anda yang tidak
efektif untuk memasang bintang-bintang ini, mereka juga telah kehilangan
fleksibilitas nya.
Ini, sedih untuk
mengatakan, cara yang banyak programmer gunakan untuk membangun sebuah aplikasi
OO ketika mereka tidak memiliki pelatihan yang tepat dalam sifat dasar bahan
pembangun seperti aplikasi-yaitu, objek perangkat lunak. Lebih parah lagi,
sebagian besar calon OO programmer bahagia tahu tentang kebutuhan untuk
memahami objek dalam rangka program dalam bahasa OO. Jadi, mereka melepas
pemrograman dengan bahasa seperti Java dan berakhir dengan hasil yang ideal
jauh dari: sebuah aplikasi yang tidak memiliki fleksibilitas ketika tak
terelakkan "midcourse koreksi" terjadi dalam menanggapi perubahan
kebutuhan setelah aplikasi telah dikerahkan.
Kesimpulan yang bisa saya ambil dari cerita diatas bahwa pemahaman dasar tentang mengapa objek itu penting karena untuk memudahkan kita / fleksibilitas dalam menanggapi perubahan kebutuhan, dalam konteks programming kita tidak perlu menulis kode dari awal jika ada perubhan cukup mengubah objek apa yang ingin kita rubah sehingga objek objek yang lain masih tetap berjalan
Jika ada kesalahan atau ada pertanyaan silahkan komen dibawah ya karena saya sendiri pun masih belajar, Terima kasih .
Komentar
Posting Komentar