Pertemuan 10 – PHP Advanced dan OOP
Transcript of Pertemuan 10 – PHP Advanced dan OOP
Pemrograman Web – Advanced
Antonius RC
Mengirim Email
Upload multiple file
Upload script
Hasil
Paging Table Result
PHP OOP
• Dikembangkan PHP5 yang support full OOP
untuk memenuhi kebutuhan
• Class: template object yang terdiri dari
abstraksi atribut dan metode dan hak abstraksi atribut dan metode dan hak
aksesnya
• Object: adalah instansiasi (bentuk nyata) dari
sebuah class
Class Diagram Person
Deklarasi Class
Setter / Mutator
Getter / Asesor
Contoh penggunaan
<?
$anton = new Person();
$anton->setName(“Antonius");
$yuan = new Person();$yuan = new Person();
$yuan->setName(“Yuan Lukito");
echo $anton->getName().“<br>";
echo $yuan->getName();
?>
Konstruktor
• Konstruktor adalah fungsi / method yang
digunakan untuk inisialisasi awal variabel /
method
• Keyword: function __construct(<parameter>)• Keyword: function __construct(<parameter>)
Konstruktor
Penggunaan
<? //konstruktor.php
$mahas= new Person(“Mahas");
$budi= new Person(“Budi");
echo $mahas->getName().“<br>";echo $mahas->getName().“<br>";
echo $budi->getName();
?>
Desktruktor
• Kebalikan dari objek destruktor
• Dipanggil ketika objek di destroy
• Objek yang didesktruk akan diberi nilai NULL
• Keyword: function __desctruct()• Keyword: function __desctruct()
Desktruktor
Hasil output: Obyek dengan tipe MyClass di destroyed
Hak Akses
• public, protected, private
Static method / property
• Method / Property dapat dideklarasikan
secara statis
• Jika Method / Property dideklarasikan secara
statik maka Method / Property tersebut dapat statik maka Method / Property tersebut dapat
langsung diakses tanpa harus membuat instan
class
• Keyword: static <method/property>
Static property
Static method
Constant variabel
• Tipe data konstanta digunakan untuk
menyimpan data yang nilainya selalu konstan
• Konstanta bersifat statis
• Dapat langsung diakses tanpa harus membuat • Dapat langsung diakses tanpa harus membuat
instan class
Contoh
Copy/Clonning object
Pewarisan
• Inheritance = Pewarisan
• Parent mewariskan sifat ke child
• Polymorphism = Banyak Bentuk
• Method dengan nama yang sama tapi beda • Method dengan nama yang sama tapi beda
parameternya (Overloading)
• Method dengan nama sama parameter sama
tapi berada dalam kelas anak (Overriding)
Polimorfisme
Inheritance
Instansiasi Langsung
Parent dan Self
Class abtrak
• Class bertipe abstrak
• Mempunyai method yang belum ada
implementasinya (bertipe abstract)
• Digunakan dengan cara di extend / diturunkan• Digunakan dengan cara di extend / diturunkan
• Keyword: abstract - extends
Class Diagram
Contoh
Penggunaan
Interface
• Mendefinisikan method yang akan digunakan
tapi belum ada implementasinya
• Keseluruhan method belum
diimplementasikandiimplementasikan
• Digunakan dengan cara di-implements
• Keyword: interface - implements
Contoh
Final
• Jika method dideklarasikan final pada class
induk maka method tidak bisa digunakan lagi
di class anaknya
• Keyword: final• Keyword: final
Contoh Error
Error class tidak dapat diturunkan
Method _toString()
instanceof
Exception
Next
• PHP Framework