ARTIKEL OOP
MENGIDENTIFIKASI OBJECT
Merupakan perwujudan dari class, setiap object akan mempunyai attribute dan method yang dimiliki oleh class-nya, contohnya: amir, ahmad, yani merupakan object dari class manusia. Setiap object dapat berinteraksi dengan object lainnya meskipun berasal dari class yang berbeda.
Definisi dan Gambaran Umum Object
Object merupakan sesuatu yang memiliki identitas (nama), pada
umumnya juga memiliki data tentang dirinya maupun object lain dan mempunyai
kemampuan untuk melakukan sesuatu dan bisa bekerja sama dengan objek lainnya.
Pada dasarnya semua benda yang ada di dunia dapat dianggap sebagai sebuah
object. Rumah, mobil, sepeda motor, meja, dan komputer merupakan contoh-contoh
object yang ada di dunia nyata. Object adalah implementasi dari class. Secara
sederhananya, dapat dikatakan terdiri dari properti (atribut) dan method.
Pemahaman singkatnya :
· Objek merupakan sebuah objek khusus yang digunakan untuk mengakses anggota objek (atribut atau method) dari dalam objek itu sendiri.
· Apabila terdapat variabel lain yang memiliki nama yang sama dengan nama atribut di dalam objek, “this” dapat digunakan untuk merujuk ke atribut objek.
Karakteristik Object
Setiap object memiliki dua karakteristik yang utama, yaitu atribut
dan behavior. Atribut merupakan status object dan behavior merupakan tingkah
laku dari object tersebut.
Contoh sederhana adalah sepeda. Object sepeda memiliki atribut : pedal, roda, dan
gigi, kecepatan serta memiliki tingkah laku seperti pacu dan rem. Sama seperti
penggambaran di dunia nyata, pengembangan program dengan konsep OOP juga
menggunakan model object yang akan menyimpan atributnya dalam variabel dan tingkah
lakunya dalam method atau fungsi-fungsi/prosedur. Deskripsinya :
Contoh objek : Sepeda
· Sepeda memiliki atribut ( state ) : pedal, roda, jeruji, dan warna.
· Sepeda memiliki tingkah laku ( behaviour ) : kecepatannya menaik, kecepatannya menurun, dan perpindahan gigi sepeda.
Dalam pengembangan perangkat lunak berorientasi objek, objek dalam perangkat lunak akan menyimpan state-nya dalam variabel dan menyimpan informasi tingkah laku ( behaviour ) dalam method-method atau fungsi-fungsi/prosedur.
Konsep-konsep dalam OOP/PBO :
· Abstraction
Adalah suatu cara untuk melihat suatu object dalam bentuk yang
lebih sederhana. Sebagai contoh kita tidak melihat sebuah mobil sebagai ribuan
komponen elektronik, sistem mekanik dengan empat buah ban, jok, stir kemudi dan
sebagainya. Dengan Abstraction, suatu sistem yang kompleks dapat dipandang
sebagai kumpulan subsistem-subsistem yang lebih sederhana, seperti halnya mobil
merupakan suatu sistem yang terdiri atas berbagai subsistem, seperti subsistem
kemudi, subsistem pengereman dan sebagainya.
Abstraksi merupakan kemampuan sebuah program untuk melewati aspek informasi yang
diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam
sistem melayani sebagai model dari “pelaku” abstrak yang dapat melakukan kerja,
laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam
sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan.
Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan
untuk mengembangkan sebuah pengabstrakan.
·
Encapsulation
Merupakan suatu mekanisme untuk menyembunyikan atau memproteksi
suatu proses dari kemungkinan interferensi atau penyalahgunaan dari luar sistem
dan sekaligus menyederhanakan penggunaan sistem tersebut.
Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah
objek dengan cara yang tidak layak. Hanya metode dalam objek tersebut yang
diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang
menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya
tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
· Inheritance
Merupakan konsep mewariskan attribute dan method yang dimiliki
oleh sebuah class kepada class turunannya. Dengan konsep ini class yang dibuat
cukup mendefinisikan attribute dan method yang spesifik didalamnya, sedangkan
attribute dan method yang lebih umum akan didapatkan dari class yang menjadi
induknya.
Mengatur polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan dan
diciptakan dengan jenis khusus dari objek yang sudah ada.Objek-objek ini dapat
membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi ulang
perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki inheritas.)
· Polymorphism
Merupakan konsep yang memungkinkan digunakannya suatu interface
yang sama untuk memerintah suatu object agar melakukan suatu tindakan yang
mungkin secara prinsip sama tetapi secara proses berbeda.
Model data berorientasi objek disebut 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 selain itu pendekatan OOP lebih
mudah dikembangkan dan dirawat.
Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin,
bahasa orientasi objek dapat mengirim pesan, dengan metode tertentu yang
berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di
mana pesan tersebut dikirim.
Contohnya, bila sebuah burung menerima pesan “gerak cepat”, dia akan menggerakan
sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan
menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama,
namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme
karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek
yang berbeda selagi program berjalan, dan teks program yang sama dapat
memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan
yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai
polimorfisme melalui penggunaan fungsi kelas-pertama.
Komentar
Posting Komentar