Object-Oriented Programming PHP
OOP atau Programming
Berorientasi Objek adalam konsep pemgrograman yang berorientasikan
kepada ‘Objek’, dimana struktur data yang berisi karakteristik dalam
bentuk sebuah data, sering disebut sebagai ‘Atribut’ dan kode yang
berisi prosedur, sering disebut sebagai ‘Metode’. Konsep OOP
memungkinkan pengembang program untuk mengelompokan prosedur yang sama
ke dalam sebuah Class, hal ini membantu menjaga proses koding agar tidak
menulis kode yang banyak dengan prosedur yang sama.
Disini saya akan memberikan sebuah contoh dari penerapan OOP, yaitu
sebuah penerapan dalam Matematika dimana Bangun Datar sebagai sebauh Class dan objecknya terdiri dari Persegi, Segitiga, Jajar Genjang dan bangun datar lainnyaStruktur Class
Class adalah
merupakan suatu blueprint atau cetakan untuk menciptakan suatu instant
dari object. class juga merupakan grup suatu object dengan kemiripan
attributes/properties, behaviour dan relasi ke object lain. Misalnya
ketika kita mencari luas maupun keliling sebuah persegi yang menjadi
class adalah bangun datar, karena persegi merupakan salah satu dari
bangun datar.
Struktur Object
Object atau Objek adalah hasil cetak dari class, atau hasil ‘konkrit’ dari class. Jika diasumsikan apabila classnya adalah bangun datar, maka objectnya bisa berupa : persegi, persegi panjang, trapesium, segitiga dan lain-lain.
Struktur Method
Method adalah merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object. Bila diasumsikan method merupakan cara yang digunakan untuk mencari luas/keliling dari sebuah bangun datar(rumus).
Struktur Properti
Property (atau disebut juga dengan atribut) adalah data yang terdapat dalam sebuah class/objek. Contohnya properti dari sebuah persegi panjang adalah memiliki panjang lebar, dan diagonal.
Selain memiliki beberapa struktur, OOP juga memliki sifat-sifat sebagai berikut :
Inheritance
Inheritance atau Pewarisan/Penurunan adalah konsep pemrograman dimana sebuah class dapat ‘menurunkan’ property dan method yang dimilikinya kepada class lain. Konsep inheritance digunakan untuk memanfaatkan fitur ‘code reuse’ untuk menghindari duplikasi kode program. Contohnya sifat yang terdapat pada bangun datar dimiliki oleh bangun ruang.
Enkapsulasi
Enkapsulasi (encapsulation) adalah sebuah metoda untuk mengatur struktur class dengan cara menyembunyikan alur kerja dari class tersebut.
Struktur class yang dimaksud adalah property dan method. Dengan enkapsulasi, kita bisa membuat pembatasan akses kepada property dan method, sehingga hanya property dan method tertentu saja yang bisa diakses dari luar class. Enkapsulasi juga dikenal dengan istilah ‘information hiding’.
Prosedur yang terjadi di dalam program seperti ini :
Sedangkan pengguna/user hanya melihat output dari program diatas tanpa menampilkan prosedur
yang di lakukan program :
Polimorfism
Dari segi bahasa, Polimorfisme (bahasa inggris: Polymorphism) berasal dari dua kata bahasa latin yakni poly dan morph. Poly berarti banyak, dan morph berarti bentuk. Polimorfisme berarti banyak bentuk
Polimorfisme adalah konsep dimana terdapat banyak class yang memiliki signature method yang sama. Implementasi dari method-method tersebut diserahkan kepada tiap class, akan tetapi cara pemanggilan method harus sama. Agar kita dapat ‘memaksakan’ signature method yang sama pada banyak class, class tersebut harus diturunkan dari sebuah abstract class atau object interface.
Contohnya : Class bangun datar memiliki method hitungLuas maka pada class turunan(bangun ruang) harus mempunya method yang sama, pada bangun ruang hitungLuas sama dengan luasPermukaan.
Kesimpulan
Dengan menggunakan OOP, kita dapat melakukan prosedur yang sama
dengan cara memanggil Method yang di buat sebelumnya, dan prosedur yang
dilakukan oleh masing-masing Class yang di panggil berbeda dengan
lainnya, tapi dengan cara memanggil method yang sama, yaitu
hitungLuas();
dan hitungKeliling();
Sumber
http://www.duniailkom.com/tutorial-belajar-oop-php-pengertian-polimorfisme-dalam-pemrograman-objek-php
http://www.duniailkom.com/tutorial-belajar-oop-php-pengertian-enkapsulasi-objek-public-protected-dan-private
http://sekelebetinfo.blogspot.co.id/2014/08/pengertian-dari-oop.html
http://www.duniailkom.com/tutorial-belajar-oop-php-pengertian-class-object-property-dan-method/
http://www.duniailkom.com/tutorial-belajar-oop-php-pengertian-inheritance-pewarisan/
http://www.duniailkom.com/tutorial-belajar-oop-php-pengertian-polimorfisme-dalam-pemrograman-objek-php
http://www.duniailkom.com/tutorial-belajar-oop-php-pengertian-enkapsulasi-objek-public-protected-dan-private
http://sekelebetinfo.blogspot.co.id/2014/08/pengertian-dari-oop.html
http://www.duniailkom.com/tutorial-belajar-oop-php-pengertian-class-object-property-dan-method/
http://www.duniailkom.com/tutorial-belajar-oop-php-pengertian-inheritance-pewarisan/