Object
Oriented Programmed
Pada
Kesempatan ini, Saya akan menjelaskan tentang Pemrogramman Berorientasi Objek
atau yang lebih sering dikenal dengan Object Oriented Programming (OOP)
OOP
itu sendiri merupakan salah satu paradigma pemrograman yang ditemukan pada
sekitar tahun 1960 namun OOP ini baru dikembangkan pada awal tahun 1970
menggantikan teknik pemrograman yang berbasis prosedur dan sampai saat ini OOP
adalah paradigma pemrograman yang sering digunakan atau yang paling populer.
OOP
adalah teknik pemrograman dimana semua data dang fungsi nya dimasukkan kedalam
class atau objek. Objek-objek inilah yang nantinya akan menerima pesan,
memproses, mengirim, menyimpan, dan memanipulasi data. Bahkan beberapa objek
dapat saling berinteraksi untuk saling memberikan informasi. Objek itu sendiri
harus berisikan informasi tentang dirinya dan tentu saja seperti diatas untuk
saling memberikan informasi maka setiap objek harus saling terhubung dengan
objek yang lain.
berikut adalah istilah umum di OOP :
1.
Attribut
Attribut
adalah suatu variabel global yang dimiliki sebuah class. Attribut bisa juga
disebut sebagai State / Properties / Field. Attribut itu sendiri merupakan
suatu bagian dari class yang tidak bisa melakukan operasi tetapi akan dilakukan
operasi terhadap Attribut sehingga nilai dari attribut dapat berubah ubah
sesuai dengan operasi yang dilakukan terhadapnya.
Attribut
itu sendiri memiliki 3 hak akses yaitu Public, Private, Protected. Jika
Attribut dideklarasikan sebagai Public maka semua class akan dapat mengakses
Attribut tersebut, Jika dinyatakan sebagai Private maka Attribut tersebut hanya
dapat diakses oleh class itu sendiri, Dan jika Protected maka Attribut hanya
bisa diakses oleh class itu sendiri dan class turunannya
2.
Method
Method
adalah sebuah fungsi atau prosedur yang dibuat oleh programmer didalam sebuah
class. Method yang terdapat pada sebuah class hampir dengan fungsi atau
prosedur pada pemrograman prosedural.
Sebuah
method juga memiliki izin akses yang sama dengan Attribut yaitu public, private
dan protected. Sebuah class dapat memiliki beberapa method jika parameter
masukkan tidak ada yang sama sehingga ketika saat dicompile kompiler dapat
mengetahui method manakah yang dipanggil
didalam
sebuah class juga terdapat method statis yaitu method yang dapat berbagi akses
dengan objek lain tanpa perlu membuat objek statis tadi atau tanpa perlu proses
new, method statis ini sendiri mempunyai kelemahan yaitu hanya dapat mengakses
method yang berada didalam class yang sama yang bersifat statis. method statis
ini biasanya digunakan untuk method main
fungsi
fungsi method adalah untuk merubah nilai attribut dari suatu objek, menerima
informasi dari object lain, dan mengirim informasi ke objek lain untuk
melakukan sebuah proses
3.
Class
Class
adalah sebuah model yang berisikan kumpulan dari attribute dan method di dalam
suatu unit untuk suatu tujuan. Perbedaan suatu class dari sebuah struktur
adalah class itu dapat berdiri sendiri dan digunakan untuk keperluan keperluan
kelas lain sementara struktur tidak dapat berdiri sendiri
4.
Objek
Objek
adalah sebuah perwujudan dari suatu class dan setiap objek pasti memiliki
sebuah attribut dan method yang dimiliki oleh classnya, meskipun berbeda class
objek masih bisa saling berinteraksi dengan objek lainnya.
objek
merupakan objek khusus yang mengakses anggota anggota yang berada di dalam
objek tersebut baik itu attribut ataupun method. dan jika terdapat nama
variabel yang sama dengan nama attribut di objek tersebut maka kita bisa
menggunakan "this" yang berfungsi untuk merujuk kepada attribut objek
objek
memiliki dua karakteristik yaitu attribut dan behavior berikut adalah contoh
sederhana dari objek sepeda. Objek sepeda tersebut memiliki attribut pedal,
jeruji, dan warna sementara behavior dari sepeda adalah kecepatannya menaik,
kecepatannya menurun, dan perpindahan gigi sepeda
OOP
sendiri memiliki 4 konsep yaitu :
1.
Abstraction
yaitu
suatu cara untuk melihat suatu objek dalam bentuk yang lebih sederhana.
Abstraksi itu sendiri merupakan sebuah kemampuan dari program untuk
melewati aspek aspek informasi yang
diproses dan akan langsung memfokuskan kepada intinya. fungsi dan method
sendiri dapat juga dibuat abstrak.
2.
Encapsulation
adalah
mekanisme yang berfungsi untuk menyembunyikan atau memproteksi sebuah proses
sehingga proses tersebut tidak dapat di interfensi maupun penyalahgunaan dari
luar sistem selain itu encapsulation juga bisa untuk menyederhanakan penggunaan
sistem tersebut. interfensi yang dimaksud diatas adalah agar para pengguna
sebuah objek mengganti keadaan dalam objek dengan cara yang salah sehingga bisa
membuat program akan rusak, oleh karena itu encapsulation akan memastikan bahwa
tidak akan ada interfensi agar program tersebut tidak rusak / error
3.
Inheritance
adalah
konsep yang digunakan untuk mewariskan attribut dan method kepada class
turunanya sehingga class turunannya hanya akan mendeklarasikan attribut dan
method yang lebih spesifikasi lalu untuk method dan attribut yang umum akan
didapatkan dari class induknya
4.
Polymorphism
adalah
konsep dimana memungkinkan kita untuk menggunakan sebuah interface yang sama
dalam memerintah suatu objek untuk melakukan tindakan yang prinsip nya sama
tetapi jika kita lihat bahwa secara
proses nya berbeda. sebagai contoh jika kita memberi perintah kepada burung
merpati dan kucing untuk pergi ke suatu daerah maka burung merpati akan mulai
terbang sementar kucing akan lari ketempat yang kita perintahkan, ini
menunjukkan bahwa walaupun pesan yang mereka terima sama tetapi mereka akan
memproses nya berbeda maka contoh tersebut merupakan polymorphism.
Sumber