OOP using PHP part 1

Pemrograman beroriantasi objek / Object Oriented Programming (OOP) adalah teknik pemograman yang menggunakan Objek.
Pemrograman berorientasi Objek ini memiliki kemampuan untuk menyembunyikan apa yang tidak penting bagi penggunanya.

Jika membuat program skala kecil tentu saja manfaat yang jelas dari OOP ini kurang terasa, Tetapi ketika membuat projek program skala menengah sampai besar maka akan terlihat betapa pentingnya penggunaan OOP.

Langkah awal ialah pembuatan objek dimana objek itu sendiri berasal dari kelas.
Contoh membuat sebuah kelas (class) Emailer.

Kode yang ada di dalam kelas terbagi menjadi dua kelompok, yaitu property dan method.
Property adalah suatu wadah penyimpanan di dalam kelas yang bisa menampung informasi. Sederhananya Property itu bisa disebut juga variable di dalam kelas.
Method adalah fungsi yang ada di dalam kelas.

Untuk menggunakan Objek, pertama harus membuat objek dari suatu kelas.
Pada konteks ini kelasnya adalah Emailer. Membuat Objek dari sebuah kelas disebut (instantiating). Untuk membuat objek di dalam PHP, kita menggunakan kata kunci “new”.

Menggunakan Objek. kita sudah membuat sebuah kelas dan membuat objek dari kelas tersebut.

Ketika kode dijalankan maka akan muncul teks (username@website.com)

PUBLIC & PRIVATE
Private : method atau property yang ada di dalam suatu kelas hanya bisa diakses di dalam kelasnya.
Public : method atau property tersebut bisa diakses didalam dan diluar kelas.

Ketika kode dijalankan makan akan muncul pesan “Fatal Error: Cannot access private property”

Enkapsulasi / Encapsulation adalah mekanisme untuk mengikat kode dengan data yang dimanipulasinya sehingga kode dan data yang ada didalamnya aman dari gangguan luar.
Menggabungkan data dan method dalam sebuah class disebut Encapsulation

$this

Didalam sebuah class, $this adalah sebuah variabel istimewa untuk mengkases property yang ada dalam class yang sedang digunakan.
$this tidak bisa digunakan diluar kelas.
Format $this adalah $this->namavariable
pada contoh diatas, kelas Emailer memiliki property EmailAddress,
$this->EmailAddress

Dengan menggunakan $this untuk mengakses property, anda bisa melakukan berbagai operasi terhadap EmailAddress :

Perhatikan tanda ($). ketika menggunakan variabel anda mengawali nama variabel dengan tanda ($). pada contoh di atas $UserEmail. tetapi jika menggunakan $this-> maka variabel atau property tidak boleh menggunakan tanda ($).

Method
method mendefinisikan apa yang bisa dikerjakan oleh objek. Method ini dibuat didalam kelas.
Mudahnya method ini adalah fungsi (Function) di dalam kelas atau objek.

Untuk menggunakan method, sama seperti property anda harus menggunakan operator -> sehingga pada contoh kode sebelumnya ketika anda menggunakan method getEmailAddress dan setEmailAddress, kode akan diketikan sebagai berikut :