Pertemuan 10 – PHP Advanced dan OOP

40
Pemrograman Web – Advanced Antonius RC

Transcript of Pertemuan 10 – PHP Advanced dan OOP

Page 1: Pertemuan 10 – PHP Advanced dan OOP

Pemrograman Web – Advanced

Antonius RC

Page 2: Pertemuan 10 – PHP Advanced dan OOP

Mengirim Email

Page 3: Pertemuan 10 – PHP Advanced dan OOP

Upload multiple file

Page 4: Pertemuan 10 – PHP Advanced dan OOP

Upload script

Page 5: Pertemuan 10 – PHP Advanced dan OOP

Hasil

Page 6: Pertemuan 10 – PHP Advanced dan OOP

Paging Table Result

Page 7: Pertemuan 10 – PHP Advanced dan OOP

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

Page 8: Pertemuan 10 – PHP Advanced dan OOP

Class Diagram Person

Page 9: Pertemuan 10 – PHP Advanced dan OOP

Deklarasi Class

Setter / Mutator

Getter / Asesor

Page 10: Pertemuan 10 – PHP Advanced dan OOP

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();

?>

Page 11: Pertemuan 10 – PHP Advanced dan OOP

Konstruktor

• Konstruktor adalah fungsi / method yang

digunakan untuk inisialisasi awal variabel /

method

• Keyword: function __construct(<parameter>)• Keyword: function __construct(<parameter>)

Page 12: Pertemuan 10 – PHP Advanced dan OOP

Konstruktor

Page 13: Pertemuan 10 – PHP Advanced dan OOP

Penggunaan

<? //konstruktor.php

$mahas= new Person(“Mahas");

$budi= new Person(“Budi");

echo $mahas->getName().“<br>";echo $mahas->getName().“<br>";

echo $budi->getName();

?>

Page 14: Pertemuan 10 – PHP Advanced dan OOP

Desktruktor

• Kebalikan dari objek destruktor

• Dipanggil ketika objek di destroy

• Objek yang didesktruk akan diberi nilai NULL

• Keyword: function __desctruct()• Keyword: function __desctruct()

Page 15: Pertemuan 10 – PHP Advanced dan OOP

Desktruktor

Hasil output: Obyek dengan tipe MyClass di destroyed

Page 16: Pertemuan 10 – PHP Advanced dan OOP

Hak Akses

• public, protected, private

Page 17: Pertemuan 10 – PHP Advanced dan OOP

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>

Page 18: Pertemuan 10 – PHP Advanced dan OOP

Static property

Page 19: Pertemuan 10 – PHP Advanced dan OOP

Static method

Page 20: Pertemuan 10 – PHP Advanced dan OOP

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

Page 21: Pertemuan 10 – PHP Advanced dan OOP

Contoh

Page 22: Pertemuan 10 – PHP Advanced dan OOP

Copy/Clonning object

Page 23: Pertemuan 10 – PHP Advanced dan OOP

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)

Page 24: Pertemuan 10 – PHP Advanced dan OOP

Polimorfisme

Page 25: Pertemuan 10 – PHP Advanced dan OOP

Inheritance

Page 26: Pertemuan 10 – PHP Advanced dan OOP

Instansiasi Langsung

Page 27: Pertemuan 10 – PHP Advanced dan OOP

Parent dan Self

Page 28: Pertemuan 10 – PHP Advanced dan OOP

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

Page 29: Pertemuan 10 – PHP Advanced dan OOP

Class Diagram

Page 30: Pertemuan 10 – PHP Advanced dan OOP

Contoh

Page 31: Pertemuan 10 – PHP Advanced dan OOP

Penggunaan

Page 32: Pertemuan 10 – PHP Advanced dan OOP

Interface

• Mendefinisikan method yang akan digunakan

tapi belum ada implementasinya

• Keseluruhan method belum

diimplementasikandiimplementasikan

• Digunakan dengan cara di-implements

• Keyword: interface - implements

Page 33: Pertemuan 10 – PHP Advanced dan OOP

Contoh

Page 34: Pertemuan 10 – PHP Advanced dan OOP

Final

• Jika method dideklarasikan final pada class

induk maka method tidak bisa digunakan lagi

di class anaknya

• Keyword: final• Keyword: final

Page 35: Pertemuan 10 – PHP Advanced dan OOP

Contoh Error

Page 36: Pertemuan 10 – PHP Advanced dan OOP

Error class tidak dapat diturunkan

Page 37: Pertemuan 10 – PHP Advanced dan OOP

Method _toString()

Page 38: Pertemuan 10 – PHP Advanced dan OOP

instanceof

Page 39: Pertemuan 10 – PHP Advanced dan OOP

Exception

Page 40: Pertemuan 10 – PHP Advanced dan OOP

Next

• PHP Framework