Untuk mempelajari OOP, kita harus mengerti terlebih dahulu dasar-dasar pemrograman. Jadi kalau belum mengerti dasar-dasar pemrograman, dijamin, akan sulit mempelajari OOP.
OOP hanya salah satu cara alternatif jika kita ingin membangun sebuah program aplikasi sistem. Program aplikasi sistem biasanya besar dan kompleks. Tanpa OOP program aplikasi sistem masih dapat dibuat. Lalu kenapa harus menggunakan OOP jika program aplikasi sistem dapat dibuat dengan cara konvensional?
Salah satu alasan mengapa ada OOP adalah penyatuan antara data dan fungsi. Para metode pemrograman konvensional, misalnya kita memiliki fungsi sebagai berikut (menggunakan VB.Net) :
function hitung_luas(byval a as single, byval b as single) as double
return a * b;
end function
Meskipun nama fungsi di atas menunjukkan kegunaannya, namun user masih belum jelas untuk menghitung luas bidang apa. Sekarang perhatikan contoh program yang menggunakan OOP :
class PersegiPanjang
public panjang as single
public lebar as single
public function hitung_luas(byval a as single, byval b as single) as double
return a * b;
end function
end class
...
...
...
Dim buku as New PersegiPanjang
buku.panjang = 11
buku.lebar = 8.5
console.writeline(buku.hitung_luas())
Class adalah struktur rancang bangun sebuah objek. Buku adalah objek yang dibuat dari class PersegiPanjang.
Dari contoh di atas fungsi hitung_luas jelas untung menghitung luas persegi panjang. Selain itu data yang dibutuhkan yaitu panjang dan lebar juga menjadi satu dalam satu class. Dengan demikian data dan function akan jauh lebih mudah dikenali dan ditemukan. Sedangkan bagi pengguna class akan lebih mudah digunakan karena korelasi antara objek (buku), data, dan fungsinya menjadi jelas.
Nikmatnya OOP yang berikutnya adalah pewarisan (inheritance). Dengan inheritance ini, class menjadi mudah diperluas. Dari contoh class PersegiPanjang di atas, misalnya kita ingin tambahkan fungsi untuk menghitung isi / volume. Untuk menghitung volume data yang dibutuhkan adalah tinggi dan rumusnya adalah v = p * l * t. Dengan OOP kita tidak perlu mengubah kelas yang sudah ada, cukup mewariskan sifat dari class yang sudah ada.
class BalokClass Balok mewarisi sifat Class PersegiPanjang dengan perintah Inherits. Pada saat class Balok dibuat, panjang dan lebar tidak perlu dibuat ulang karena class Balok secara otomatis memiliki panjang dan lebar karena class Balok adalah keturunan class PersegiPanjang. Yang perlu dibuat adalah tinggi dan menghitung isinya. Dengan demikian selain mudah dikembangkan, dengan OOP program cepat pula waktu pengembangannya.
Inherits PersegiPanjang
public tinggi as single
public function hitung_isi(byval a as single, byval b as single, byval c as single
) as double
return a * b * c;
end function
end class
...
...
...
Dim kardus as New Balok
kardus.panjang = 5
kardus.lebar = 10
kardus.tinggi = 2
console.writeline(buku.hitung_isi())
Di dalam OOP dikenal dengan istilah polymorphisme. Gambaran polymorphisme adalah sebagai berikut : suatu kata ; "buka pintu" akan mempunyai banyak bentuk proses "buka pintu" tergantung dari cara kerja pintunya. Jika pintu konvensional, maka untuk mem-"buka pintu" memutar handel pintu kemudian menariknya agar pintu terbuka. Jika pintunya bentuk sorong, maka untuk mem-"buka pintu"-nya harus mendorong pintunya agar terbuka. Itulah polymorphisme (memiliki banyak bentuk).
Pada OOP, data member dan fungsi dapat memiliki banyak bentuk. Polymorphisme biasanya berkaitan dengan inheritance.
** Sekian dulu ah **
Tidak ada komentar:
Posting Komentar