Perbandingan Object Oriented dengan Prosedural

alfa6661
- April 13, 2012
0 (0 votes)
Rate :
Perbandingan antara Object Oriented dengan Prosedural

Pemrograman Prosedural

Pemrograman Terstruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program. Selain pengertian diatas Pemrograman Terstruktur adalah suatu aktifitas pemrograman dengan memperhatikan urutan langkah-langkah perintah secara sistematis, logis , dan tersusun berdasarkan algoritma yang sederhana dan mudah dipahami.

  1. Diselesaikan dalam bentuk prosedur atau fungsi
  2. Program merupakan urut-urutan instruksi
  3. Program dipecah-pecah ke dalam sub program yang lebih sederhana
  4. Fokus utama pada prosedur dan fungsi
  5. Fungsi dan prosedur digunakan untuk memanipulasi data, Sedangkan data sendiri bersifat pasif

Pemrograman berorientasi Obyek

Pemrograman berorientasi objek (OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Jika dibandingkan dengan logika pemrograman terstruktur maka setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.

  1. Fungsi dan data menjadi satu kesatuan yang disebut obyek
  2. Obyek-obyek dalam OOP bersifat aktif
  3. Cara pandang : program bukan urut-urutan instruksi tapi diselesaikan oleh obyek-obyek yang bekerjasama untuk menyelesaikan masalah

Pemrograman berorientasikan objek dikatakan lebih baik apabila Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

Contoh nyata

Kita akan menempatkan kedua jenis pemrograman diatas untuk menguji dengan contoh dunia nyata. Sebagai contoh kita bekerja untuk produsen kendaraan yang perlu memperbarui sistem persediaan secara online. Bos memberitahu kita untuk program dua bentuk yang serupa namun terpisah untuk sebuah situs web, salah satu bentuk yang memproses informasi tentang mobil dan satu lagi untuk truk.

Untuk mobil, kita perlu mencatat informasi berikut:

  1. Warna
  2. Ukuran mesin
  3. Tipe transmisi
  4. Jumlah pintu

Untuk truk, informasi akan serupa, tapi sedikit berbeda. Kita perlu:

  1. Warna
  2. Ukuran mesin
  3. Tipe transmisi
  4. Kapasitas

Dalam pemrograman prosedural, kita akan menulis kode pertama untuk memproses bentuk mobil dan kemudian kode untuk bentuk truk.

Sedangkan dengan pemrograman berorientasi obyek, kita akan menulis kelas dasar yang disebut kendaraan yang akan mencatat karakteristik umum apa yang kita butuhkan dari kedua truk dan mobil. Dalam hal ini, kelas kendaraan akan mencatat :

  1. warna
  2. Ukuran mesin
  3. Tipe transmisi

Kita akan membuat masing-masing karakteristik tersebut menjadi metode terpisah. Metode warna, misalnya, bisa mengambil warna kendaraan sebagai parameter dan melakukan sesuatu dengan warna tersebut, contoh menyimpannya dalam database.

Selanjutnya, kita akan membuat dua kelas lagi: truk dan mobil, baik yang akan mewarisi semua metode dari kelas kendaraan dan memperpanjang dengan metode yang unik bagi masing masing kelas tersebut.

Skenario

Misalkan kita tiba-tiba perlu menambahkan mobil jenis bus, yang mencatat informasi berikut:

  1. Warna
  2. Ukuran mesin
  3. Tipe Transmisi
  4. Jumlah penumpang

Prosedural: Kita perlu menciptakan seluruh form, mengulangi kode untuk Jenis Warna, Ukuran Mesin, dan Transmisi pada masing masing kendaraan.

OOP: Kita hanya perlu membuat kelas bus yang diturunkan dari kelas kendaraan dan menambahkan metode untuk mendapatkan jumlah penumpang.

Referensi

  1. virtuosimedia

Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter

– Eric S. Raymond

Have a better explanation?

If you have comments about this post. Please write your comments below

No comments associated with this article