Senin, 27 Mei 2013

Perbedaan Pemrograman Prosedural dan Pemrograman Berorientasi Objek

Seperti yang telah kita ketahui, semua program computer terdiri atas kode dan data. Kode yang saya maksud di sini adalh proses logis program (misalnya fungsi), sedangkan data dapat berupa variable maupun konstanta. Selanjutnya, kode dan data tersebut secara konseptual diatur sedemikian rupa sehingga sehingga dapat bekerja sama untuk menghasilkan program keluaran sesuai dengan proses yang diinginkan.

Pada model pemrograman tradisional atau procedural (disebut process-oriented model), semua data dan kode digabung menjadi satu bagian dalam satu program. Untuk program-program sderhana yang hanyamembutuhkan beberapa buah baris kode, penggunaan ini tentu tidak menjadi masalah. Permasalahan baru akan timbul pada saat program tersebut berkembang ke arah yang lebih besar dan kompleks, yang mungkin membutuhkan ratusan atau bahkan mencapai ribuan baris kode. Alasan semacam inilah yang menjadi benih diciptakannya model pemrograman baru, yaitu model pemrograman berorientasi objek (object-oriented model). Pada model ini, komponen-komponen penyusun program secara konseptual akan dipecah menjadi bagian-bagian tersendiri yang disebut dengan objek. 

Di dalam pemrograman berorientasi objek, setiap objek akan memiliki data (sifat, berupa variable maupun konstanta) dan method(perilaku atau kemampuan melakukan sesuatu, berupa fungsi). Jadi objek dapat didefenisikan sebagai entitas yang memiliki data dan method. Sebagai contoh, manusia; adalah suatu objek yang memiliki data-data (misalnya: nama, jenis kelamin, tinggi badan, berat badan, dan yang lain) dan juga method (misalnya : cara bicara, cara berjalan, cara marah dan sebagainya). Di dalam dunia pemrograman, objek semacam ini diabstraksikan menjadi sebuah kelas. Dengan kata lain, kelas adalah bentuk abstrak dari sebuah objek. Wujud nyata dari suatu kelas disebut dengan instance. Sebagai contoh, apabila terdapat kelas manusia, maka contoh instance-nya adalah: Udin, Kabayan, George dll. Contoh lain, apabila terdapat kelas kucing, maka contoh instance-nya adalah: SI meong, si manis, si puspus dll.
Secara umum, beberapa keuntungan yang tampak pada model pemrograman berorientasi objek adalah sebagai berikut:
·         >>Objek-objeknya dapat digunakan ulang (reuseable) untuk program-program lain
·         >>Programnya lebih terstruktur dan  lebih mudah untuk dikembangkan
·         >>Bersifat natural atau alami, karena perilaku dan sifat-sifat objek di dalam program akan disesuaikan dengan objek-objek nyata yang ada di alam sekitar kita.