Istilah - Istilah OOP

Berikut ini istilah-istilah yang sering kali terdengar dalam teknik pemrograman OOP:

1.      Object (Objek)
Untuk mempermudah pemahaman, maka disini akan dijelaskan melalui analogi. Pada dasarnya semua benda yang adadi dunia nyata dapat dianggap sebagai objek. Misalnya rumah, mobil, sepeda, motor, gelas, komputer, meja, sepatu, dll. Setiap objek memiliki atribut sebagai status (state) dan tingkah laku sebagai behavior. Contoh objek : Motor. Maka atribute (state) nya adalah pedal, roda, jeruji, speedometer, warna, jumlah roda. Sedangkan tingkah laku (behavior) nya adalah kecepatan menaik, kecepatan menurun, dan perpindahan gigi motor. Analogi pemrograman berorientasi objek sama dengan penggambara pada dunia nyata seperti contoh di atas. Dalam OOP, state disimpan pada variabel dan tingkah laku disimpan pada method. Dalam bahasa teoretis OOP, Objek berfungsi untuk membungkus data dan fungsi bersama menjadi satu unit dalam sebuah program komputer. Objek merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.
 
2.      Class (Kelas)
Class merupakan cetakan dari object. Sebuah class berisi kode-kode yang mendefinisikan bagaimana sebuah object akan berperilaku dan berinteraksi satu sama lain atau berinteraksi dengan dirinya sendiri. Definisi class yaitu template untuk membuat objek. Class merupakan prototipe atau blue prints yang mendefinisikan variabel-variabel dan method-method secara umum. Objek merupakan hasil instansiasi dari suatu class. Proses pembentukan objek dari suatu kelas disebut sebagai instantiation. Objek disebut juga sebagai instances. Dalam bahasa teoretis OOP, class merupakan kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.
 
3.      Attribute (Atribut)
Atribut adalah data yang membedakan antara objek satu dengan yang lainnya.

Contoh Objek : VolcanoRobot ( a volcanic exploration vehicle), mempunyai atribut sebagai berikut:
  • Status ~> exploring, moving, returning home 
  • Speed ~> in miles per hour 
  • Temperature ~> in Fahrenheit degrees 

Dalam class, atribut sering disebut sebagai variabel. Atribut dibedakan menjadi dua jenis yaitu Instance Variable dan Class Variable.
Instance variable adalah atribut untuk tiap objek dari kelas yang sama. Tiap objek mempunyai dan menyimpan nilai atributnya sendiri. Jadi, tiap objek dari class yang sama bokeh mempunyai nilai yang sama atau berbeda. Class Variable adalah atribut untuk semua objek yang dibuat dari class yang sama. Semua objek mempunyai nilai atribut yang sama. Jadi semua objek dari class yang sama mempunyai hanya satu nilai yang value nya sama.
 
4.      Behavior
Behavior/tingkah laku adalah hal-hal yang bisa dilakukan oleh objek dari suatu class. Behavior dapat digunakan untuk mengubah nilai atribut suatu objek, menerima informasi dari objek lain, dan mengirim informasi ke objek lain untuk melakukan suatu tugas (task).

Contoh behavior untuk objek VolcanoRobot:
check current temperature
begin a survey
report its current position

Dalam class, behavior disebut juga sebagai methods. Methods sendiri adalah serangkaian statements dalam suatu class yang menghandle suatu task tertentu. Cara objek berkomunikasi dengan objek yang lain adalah dengan menggunakan method.

5.      Abstraksi
Abstraksi adalah 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.
6.      Property (Properti)
Pada dasarnya property merupakan variable yang dideklarasikan di dalam class, namun tidak berada di dalam fungsi (method) dari suatu class. Property terdapat di dalam class yang memberikan informasi. Property bisa diakses dengan tiga jenis akses user (modifier), antara lain: public, private dan protected yang akan dibicarakan lebih lanjut.

7.      Method (Metode)
Method merupakan fungsi yang berada di dalam class. Seperti property, method juga dapat diakses dengan tiga jenis akses user atau modifier.
8.      Encapsulation (Enkapsulasi)
Encapsulation atau pembungkusan adalah mekanisme melekatkan secara bersama antara method (fungsi) dan property (data) yang nantinya akan dimanipulasi, menjaga keduanya dari interferensi luar, serta mencegah penyalahgunaan dari pengguna class. Pembungkusan property dan method menjadi satu unit tunggal (disebut class) dikenal dengan istilah encapsulation. Hal ini sangat berhubungan dengan jenis-jenis modifier yang akan dibahas selanjutnya.
9.      Polymorphism (Polimorfisme)
Pada intinya Polymorphism atau perubahan bentuk adalah penerapan method yang sama tetapi menghasilkan perilaku yang berbeda.
10.  Inheritance (Pewarisan)
Inheritance atau pewarisan adalah kemampuan class untuk menciptakan class baru, yang diperoleh dari class yang sudah ada. Class baru yang terbentuk dapat ditambahkan property atau method baru, atau dapat pula menimpa property atau method yang menurunkan. Inheritance kadang disebut juga dengan penyembunyian informasi.
11.  Coupling
Coupling adalah tingkat ketergantungan/hubungan kode program terhadap kode progra lainnya. Dengan pemrograman berorientasi obyek tingkat coupling dapat diminimalisasi, sehingga memudah kita dalam memprogram.
12.  Subclass
Ketika class diturunkan dari class yang lain, maka object hasil turunan disebut dengan subclass.
13.  Superclass / Parent Class
Superclass merupakan class yang menurunkan menjadi class lain (kebalikan dari subclass).
14.  Instance
Class belum dapat digunakan karena hanya sekedar cetak biru dari sebuah object dan belum terbentuk, oleh karena itu class harus dijadikan object agar dapat digunakan. Pembentukan dari class menjadi object dikenal dengan istilah Instance.
15.  Special Method / Magic Method
Special method adalah method yang telah disediakan oleh PHP dan memiliki tujuan khusus. Misalnya: method constructor, yang akan dijalankan pertama kali saat instansiasi object dilakukan yang bertujuan untuk meng-inisialisasi class object, method destructor untuk menghapus resource class object ketika object tidak dibutuhkan lagi.

No comments:

Post a Comment

Pengertian Object dalam Pemrograman Berbasis Objek

Object  atau  Objek  adalah  hasil cetak  dari  class , atau hasil ‘ konkrit’  dari  class . Jika menggunakan analogi  class laptop , maka...