Class dan Object PHP

Kali ini saya akan membahas Pemrograman Berorientasi Objek (PBO) yang dalam bahasa inggris dikenal dengan sebutan Object Oriented Programming (OOP). Teknik pemrograman yang satu ini banyak dipakai karena kelebihannya bila dibandingkan pemrograman terstruktur yaitu lebih mengemat kode. Belajar OOP  adalah dasar dari belajar menggunakan framework PHP. Jika anda ingin belajar framework PHP maka anda harus sudah paham OOP dahulu.

Saya akan menjelaskan sedikit tentang kelas dan objek. Objek adalah bentuk luar/antarmuka dari kelas. Misalkan sebuah objek mobil yang dapat maju atau mundur dan berbelok. Kemudian objek mobil memiliki pintu, warna, empat ban dan kemudi. Semua yang dapat dikendalikan dan dilihat hasilnya adalah objek. Lalu apa itu kelas? kelas adalah cetak biru dari objek, contohnya kelas dari sebuah mobil yaitu semua komponen penyusun mobil, baik bentuk, ukuran maupun segala hal di dalamnya.

Pada kelas terdapat property dan method yang dikendalikan melalui objek. Sebagai contoh, sebuah objek mobil pedal gasnya diinjak setengah. Diinjak (kata kerja)  adalah method atau fungsi dan setengah (nilai) adalah property atau pemberian nilai. Maka outputnya mobil akan maju tidak terlalu kencang. Siapa yang mengerjakannya? tentu saja kelas atau semua komponen penyusun mobil tersebut dan objek mobil sebagai antarmuka saja. Seperti kehidupan nyata yang dianut kedalam teknik pemrograman bukan?. Sampai disini saya harap anda paham.

OOP memungkinkan pengembangan aplikasi menjadi mudah dan efisien bila projeknya cukup besar. Kelas dapat di digunakan kembali dalam bentuk objek dalam sebuah program. Sampai pada akhirnya banyak orang hanya mengetahui penggunaan objek saja tanpa perduli cetak biru atau kode di dalam kelas. 

Sebagai contoh, ketika kita menggunakan library, misalkan library pdf. Umumnya library yang banyak di internet merupakan kelas yang kemudian kita jadikan objek. Isi dari kelas tidak lagi di lihat orang, orang hanya belajar menggunakannya, yaitu method/properti apa yang tersedia dan apa gunanya.

Untuk pemula memprogram dengan teknik OOP ini akan merepotkan apalagi tidak terbiasa. Selain itu, program yang tidak kompleks tidak perlu menggunakan OOP. Sebagai kata kuncinya kapan kita membuat OOP yaitu ketika kode itu dapat dipergunakan kembali di bagian program yang lain dan sering. Sehingga kelas yang kita buat tidak sia-sia. 

Untuk pengembang perangkat lunak profesional OOP sangat diperlukan sebab dapat banyak menghemat kode program. Atau bisa saja kita merupakan pengguna saja, yaitu orang yang memanfaatkan kelas yang ada.

<?php
//nama: mobil.php
class Mobil{
var $gas;
function maju(){
if ($this->gas=='sedikit') {
echo "Mobil Melaju Pelan";
}elseif ($this->gas=='sedang') {
echo "Mobil Melaju Sedang";
}elseif ($this->gas=='penuh') {
echo "Mobil Melaju Kencang";
}
}
}

?>

Kelas pada kode di atas bernama Mobil yang di dalamnya terdapat satu property dan satu method. Property pada kelas Mobil adalah var $gas dan mthod yaitu function maju(). Method dengan fungsi keduanya sama pada PHP. Property pada sebuah kelas adalah variabel yang diawali perintah var dan jika akan digunakan di method/function harus diawali $this-> kemudian langsung nama variabel. Selanjutnya kita akan menciptakan objek dari kelas di atas.

<?php
//nama: objek_mobil.php
include "mobil.php";
$mobil = new Mobil();
$mobil->gas='penuh';
$mobil->maju();
?>

Jika kita menggunakan sebuah kelas yang beda file dengan objek yang akan di ciptakan, maka kita harus meng-include terlebih dulu file kelas tersebut. $mobil adalah objek yang kita ciptakan dari kelas Mobil dengan perintah new. Tidak ada perbedaan antara property atau method dalam hal mengakses yaitu menggunakan ->, gas adalah property yang dimasukkan nilai penuh. Sedangkan maju adalah method yang merupakan kata kerja. Perbedaan antara property dan method saat pemanggilan yaitu pada property terdapat tanda =  yang berarti memberi nilai; sedangkan method tandanya () yang berarti method/fungsi yang mungkin saja ada parameter di dalam buka-tutup kurung.

Karena digas penuh, maka mobil melaju kencang
Terima Kasih 😀😀

Popular posts from this blog

Cara Menggunakan Template Admin LTE Sebagai Template Web Dinamis

Aplikasi CRUD menggunakan Template Admin LTE

Cara membuat Link ke Halaman lain dan Link ke bagian Halaman