OBJECT ORIENTED PROGRAMMING DENGAN PHP Janitra Panji
Overview
Class
Properti / Atribut
Method
Visibilitas Member
Object
Constructor & Destructor
Inheritance
Definisi Class
Class disusun berdasarkan karakteristik sebuah objek benda. Sifat ini disebut sebagai Abstraksi (Abstraction) Class adalah penampung sekumpulan elemen data (variable) dan kode program (function) yang digunakan oleh pengolahan datanya. Sifat ini disebut sebagai enkapsulasi (Encapsulation) .
Properti / Atribut
Berdasarkan sifat abstraksi, suatu class menyimpan karakteristik suatu benda dalam suatu variable. Variabel ini sering disebut sebagai properti. Contoh: Class Orang mempunyai properti seperti Nama, Warna Rambut, Tinggi, Berat, Tahun Lahir dan lainlain. Class KoneksiDB mempunyai properti seperti Alamat Server, User Name, Password dan Nama Database
Method
Selain mempunyai properti, sebuah class juga mempunyai Method. Dalam PHP, method suatu class diwujudkan dalam sebuah function. Method adalah perilaku yang dapat dilakukan oleh class. Contoh : Class Orang mempunyai method seperti Makan, Minum, Tidur, Ucap Salam, dan lainlain Class KoneksiDB mempunyai method seperti Koneksi, EksekusiQuery, AmbilData dan lainlain
Visibilitas Member
Visibilitas dari properti atau method dapat dilakukan dengan mengawali pendefinisian dengan keyword : Public : Member ini dapat diakses dimanapun, walaupun dari luar classnya Private : Member ini hanya dapat diakses di dalam pendeklarasian classnya saja. Member ini tidak dapat dikenal di class turunannya. Protected : Mirip dengan private, tetapi member ini dapat dikenal di class parrent / turunannya.
Object
Objek merupakan insansiasi dari suatu Class. Sebuah class tidak dapat digunakan tanpa diinstansiasikan dulu.
Property atau atribut kelas
public function DataKend() { $this->jenis = "Mobil"; $this->warna = "Hitam"; $this->merek = "BMW"; Method
Akses Atribut
echo " Jenis Kendaraan : ". $this->jenis ."
Warna Kendaraan : ". $this->warna ."
Merek Kendaraan : ". $this->merek ."
"; } public function Bergerak() { echo "Kendaraan ini dapat bergerak maju mundur dan belok"; }
Method }
$kend = new Kendaraan(); $kend->DataKend(); $kend->Bergerak(); ?>
Instance : adalah objek baru dari kelas Akses method di luar kelas
Constructor & Destructor
Constructor adalah suatu function khusus yang akan dieksekusi ketika suatu objek dibuat (instansiasi class). Umumnya constructor dibuat untuk memberikan suatu operasi awal yang harus dilakukan ketika sebuah objek dilahirkan (inisialisasi objek) Destructor adalah function khusus yang dilakukan ketika suatu objek akan dihapus. Umumnya destructor dibuat untuk mengembalikan kembali sumber daya komputer.
Contoh Konstruktor
Konstruktor dapat ditulis sama dengan nama kelasnya atau menggunakan __construct(), tambahkan konstruktor pada kelas kendaraan seperti dibawah ini : public function __construct() { echo "Grand Opening kendaraan terbaru
"; } Atau
public function Kendaraan() { echo "Grand Opening kendaraan terbaru
"; }
Contoh Destruktor
Tambahkan destruktor pada kelas kendaraan seperti contoh dibawah ini : public function __destruct() { echo "Kendaraan telah musnah"; }
Inheritance (Pewarisan)
Pewarisan/Penurunan merupakan fitur OOP yang sangat berguna. Dengan pewarisan, sebuah class dapat diturunkan menjadi class baru yang mempunyai sebagian atau seluruh karakteristik dari class parentnya. Dalam pewarisan dikenal istilah Override yaitu mendefinisikan ulang suatu function yang telah tersedia di class child sehingga mempunyai perilaku yang berbeda dari perilaku function class parentnya.
Contoh Inheritance
Hapus instance pada class.kendaraan.php seperti dibawah ini : $kend = new Kendaraan(); $kend->DataKend(); $kend->Bergerak();
Tambahkan pendefinisian atribut pada method DataKend() seperti dibawah ini : Jenis Kendaraan : ". $this->jenis ."
Warna Kendaraan : ". $this->warna ."
Merek Kendaraan : ". $this->merek ."
Status : ". $this->packing ."
Masukan File class.kendaraan.php
class Mobil extends Kendaraan { protected $packing; public function Keterangan() { $this->packing = "Packing Mobil ini"; } } $obj = new Mobil(); $obj->Keterangan(); $obj->DataKend(); $obj->Bergerak(); ?>
Mobil adalah kelas Turunan dari Kelas kendaraan
Tugas Kelompok
Buat web statis tentang apapun ( terserah anda dan tanpa database ), minimal 3 menu dan 3 halaman. Gunakan konsep OOP didalamnya dan Percantik Aplikasi WEB yang anda buat dengan CSS. Gunakan imajinasi anda sebagai programmer untuk membuat WEB yang ingin anda bangun. :) Jika memerlukan contoh WEB download aplikasi saya yang open source di download.uniku.ac.id/unikucms/