Pemrograman PHP Berorientasi Object (OOP)



Pada postingan kali ini saya ingin mencoba menuliskan sedikit tentang pemrograman PHP berorientasi obyek atau biasa disebut PHP OOP. Pemrograman berorientasi obyek merupakan konsep pemrograman yang berbasis obyek sebagai sasaran program. Dalam pemrograman berorientasi obyek biasa nya akan terdapat class yang membungkus fungsi-fungsi untuk mengimplementasikan class tersebut.

Sebagai contoh sebuah mobil. Mobil terdiri dari beberapa komponen yang saling melengkapi seperti ban, setir, spion, kursi, dashboard dan lain lain. Mobil kita ibaratkan sebagai class dan komponennya adalah fungsi-fungsinya. Jadi jika kita ingin menggunakan stir, maka kita harus mendefinisikan terlebih dahulu setir pada mobil mana yang akan kita gunakan.

Jika masih bingung, dibawah ini ada contoh dasar bagaimana pemrograman berorientasi obyek didalam PHP.

<?php
class Mobil { // Class dengan nama Mobil
 // Function dengan nama setir yang berada didalam class Mobil
    public function setir($input) { 
       // Pemrosesan untuk inputan yang diberikan
       if($input == 1) {
          $output = "Mobil belok ke kanan";
       } else if ($input == 2) {
          $output = "Mobil belok ke kiri";
       } else {
          $output = "Mobil jalan lurus";
       }
   
       return $output;
    }
}
// Pemanggilan method Mobil
$mobil = new Mobil;
// Pemanggilan function setir yang diberikan input 1 untuk diolah didalam class Mobil
echo $mobil->setir(1);
?>

Itulah sedikit contoh untuk pemrograman berorientasi obyek didalam PHP. Dan sebagai perbandingan dengan pemrograman prosedural, dibawah ini saya cantumkan tabel perbandingan antara pemrograman prosedural dan OOP.

Pemrograman Prosedural Pemrograman Berorientasi Obyek
Memecah program dalam fungsi dan data Menggabungkan fungsi dan data dalam program
Memiliki ciri Sequence (berurutan), Selection (pemilihan) dan Repetition (perulangan)  Memiliki ciri Encapsulation (pengemasan), Inheritance (penurunan sifat) dan Polymorphism (perbedaan bentuk dan perilaku)
Struktur program rumit karena berupa urutan proses dan fungsi-fungsi  Struktur program ringkas, cukup dengan membuat obyek dan class lalu bekerja berdasarkan object dan class tersebut.
Re-use kode program kurang Kode program terutama class sangat re-usable
Tidak cocok untuk pemrograman berskala besar, salah satunya karena kurang sulitnya mengkoordinasi temwork Sangat cocok untuk pemrograman berskala besar salah satunya karena mudah dalam pembagian teamwork
Mudah diawal, namun kompleks diproses selanjutnya Sulit diawal (karena harus membuat class) namun selanjutnya akan terasa mudah dan cepat
Eksekusi lebih lambat karena setiap perintah dikerjakan berurutan Eksekusi lebih cepat karena dieksekusi bersamaan, program hanya mengatur obyek, properties dan method-nya saa

Jika dilihat dari tabel diatas, OOP memiliki banyak kelebihan dari pemrograman prosedural. Jadi sudah saatnya kita mulai beralih ke konsep OOP dalam pemrograman kita. Apalagi bagi kita yang ingin belajar tentang framework PHP sudah semestinya paham tentang konsep OOP. Karena hampir semua framework PHP menggunakan konsep OOP didalamnya.

0 komentar: