resa ari siswo[1210652011], rico nilar hartono[1210652008]
TRANSCRIPT
RESUME MATERI PEMROGRAMAN BERBASIS WEB
Disusun oleh:Resa Ari Siswo
NIM: 1210652011
Rico Nilar Hartono
NIM: 1210652008
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH JEMBER 2013
Pemrograman Berorientasi Objek Page 1
I. Pengenalan PHP frame workSejarah Perkembangan
Web statis :
Berbasis html dan halaman-halaman
Web dinamis :
Memisahkan antara kode program dan data
Content management system (cms) :
Web instant berupa template web
Web framework :
Membagi sistem menjadi 3 bagian yaitu model, view,controller
Arsitektur Web Framework
Berhubungan erat dengan konsep MVC
Model : Berfungsi untuk mengontrol data, disini dilakukan
proses pengambilan dan penyimpanan data sebuah sistem,
biasanya data berasal dari database yang digunakan oleh
sistem.
View : kode yang mengeluarkan html yang nantinya akan
dilihat oleh pengunjung. Kode tersebut nantinya untuk
mengatur tampilan dengan format yang spesifik.
Controller : kode yang memeriksa input dari pengunjung
dan memilih apa yang harus dilakukan. Controller berposisi
di tengah, menghubungkan model dan view dan sebagai
tujuan utama user dalam melakukan request.
Gambar MVC Pattern:
Pemrograman Berorientasi Objek Page 2
Contoh kode program MVC
Model
Merupakan layer yang bertanggung jawab untuk melakukan
hubungan dengan database, untuk contoh kali ini tidak
menggunakan database, dengan asumsi bahwa layer model
telah berhasil mendapatkan data dari database.
Simpan kode program berikut dengan nama buku.php
Pemrograman Berorientasi Objek Page 3
Simpan kode program berikut dengan nama model.php
Model mempunyai method getData() yang menghasilkan
output berapa array dengan isi adalah objek buku.
Controller
Sebagai layer yang berfungsi sebagai “playmaker”,
controller harus mempunyai akses ke model dan view
Simpan kode program berikut ini dengan nama controller.php
Pemrograman Berorientasi Objek Page 4
Penjelasan kode program
Controller mempunyai method invoke, dimana pada
method tersebutlah proses penyatuan data dari model dan view digabungkan.
View
Untuk layer view, kita hanya mendefinisikan sebuah template html sebagai tempat untuk
menampilkan data. Simpan kode program berikut ini dengan nama view.php
Kode php yang terdapat diantara tag html diatas
berfungsi untuk menampilkan data yang dikirimkan oleh controller.
Pemrograman Berorientasi Objek Page 5
Setelah ketiga layer model, view, dan controller selesai dibuat, maka tahap terakhir adalah
membuat file index.php, dimana file ini adalah sebagai penghubung yang diakses pertama
kali ketika pengguna melakukan request.
Simpan kode program berikut ini dengan nama
index.php
II. Pemrograman Berorientasi Objek dengan PHP
Konsep penting pada OOP
Class
Properti / Variable
Method / Function
Object
Instansiasi class
Constructor & destructor
Visibilitas member(member visibility)
Public, Private dan Protected
Function Setter dan Getter
Pewarisan (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).
Pemrograman Berorientasi Objek Page 6
Class dapat disusun secara hierarki sehingga suatu class dapat mewariskan beberapa atau semua karakteristiknya ke class lain (class anak/child class). Sifat ini disebut sebagai Pewarisan(Inheritance)
Property / Variable
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 lain-lain.
Class Koneksi DB mempunyai properti seperti Alamat Server, User Name, Password
dan Nama Database
Method / Function
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
lain-lain
Class Koneksi DB mempunyai method seperti Koneksi, Eksekusi Query, Ambil Data
dan lain-lain
Aturan pembuatan class
Definisi suatu class dimulai dengan keyword Class, diikuti dengan nama classnya.
Isi suatu class diapit dengan kurung kurawal({ }).
Umumnya isi class diawali dengan menuliskan propertipropertinya dan diikuti dengan
method-methodnya.
Pemrograman Berorientasi Objek Page 7
Contoh class
Nama file : orang.php
<?php
class Orang{
public $nama; // var$nama; untukPHP4
function UcapSalam(){
echo "Hallo. Nama Saya adalah $this->nama";
}
}
?>
Object
Objek merupakan instansiasi dari suatu Class. Sebuah class tidak dapat digunakan tanpa
diinstansiasikan dulu(kecuali untuk Static Class).
Objek sebenarnya sebuah variable
Instansiasi class
Instansiasi objek bisa dilakukan dengan perintah new.
Ketika suatu instansiasi class (pembuatan objek) dilakukan, maka secara otomatis akan
memanggil function Constructor milik class tersebut.
Contoh instansiasi class :
$triawan = new Orang();
$db = new KoneksiDB(“localhost”,”root”,”root”,”db”);
Contoh instansiasi class
Nama file orang1.php
Pemrograman Berorientasi Objek Page 8
Constructor dan Destructor
o Constructor adalah suatu function khusus yang akan dieksekusi ketika suatu
objek dibuat(instansiasi class).
o Umumnya constructor dibuat untuk memberikan suatu operasi awal yang harus
dilakukan ketika sebuah objek dilahirkan(inisialisasi objek)
o Destructor adalah function khusus yang dilakukan ketika suatu objek akan
dihapus.
o Umumnya destructor dibuat untuk mengembalikan kembali sumber daya
komputer(misalnya memori, file). Contoh operasi dalam destructor menghapus
kembali memori yang telah digunakan atau menutup koneksi ke suatu file.
Contoh constructor dan destructor
Nama file Orang2.php
Pemrograman Berorientasi Objek Page 9
Nama file Orang3.php
Visibilitas member
Visibilitas dari properti atau method dapat dilakukan dengan mengawali pendefinisian dengan keyword :
PublicMember ini dapat diakses dimanapun, walaupun dari luar classnya.
PrivateMember ini hanya dapat diakses didalam pendeklarasian classnya saja. Member ini tidak dapat dikenal di class turunannya.
ProtectedMirip dengan private, tetapi member ini dapat dikenal di class
turunannya.
Nama file visibility.php
Pemrograman Berorientasi Objek Page 10
Function setter dan getter
Function Setter adalah fungsi yang digunakan untuk memberikan (set) nilai untuk suatu
properti. Umumnya function ini digunakan untuk properti yang mempunyai visibilitas
protected atau private. Function setter sering digunakan untuk memvalidasi data yang
masuk sebelum data tersebut diisikan ke suatu properti.
Function Getter adalah suatu function yang digunakan untuk menghasilkan (get) suatu
nilai baik dari member public, private, protected ataupun dari hasil perhitungan.
Nama file setget.php
Pemrograman Berorientasi Objek Page 11
Pewarisan (inheritance)
Pemrograman Berorientasi Objek Page 12
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.
Pewarisan dilakukan dengan keyword “extends”
Visibility member berlaku di pewarisan.
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.
Dalam class turunan, boleh ditambah properti atau member baru.
Nama file waris1.php
Pemrograman Berorientasi Objek Page 13
Skrip waris2.php
III. Beberapa konsep penggunaan MVC yang terdapat pada PHP Frameworks
i. Konsep Model, View, Controller (MVC)
Konsep Model-View-Controller atau MVC adalah sebuah metode untuk membuat sebuah aplikasi
web dengan memisahkan data (Model) dari tampilan (View) dan cara bagaimana memrosesnya
(Controller). Dalam implementasinya kebanyakan framework dalam aplikasi website adalah
berbasis arsitektur MVC seperti terlihat pada gambar 2. MVC memisahkan pengembangan aplikasi
berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data,
antarmuka pengguna, dan bagian yang menjadi kontrol dalam sebuah aplikasi web [3].
Model –mengandung fungsi-fungsi untuk berkomunikasi dengan basis data, seperti: mengambil
data produk dengan id tertentu, hapus produk, menyimpan komentar.
View –kode yang mengeluarkan HTML yang akan dilihat oleh pengguna.
Controller –kode yang memeriksa input dari pengguna dan memilih apa yang harus dilakukan.
ii. Konsep MVC : Controller
Untuk memahami konsep MVC suatu framework harus memahami :
Pemrograman Berorientasi Objek Page 14
–Instalasi dan konfigurasi web framework tsb
–Struktur direktori dalam framework
–Penerapan MVC (sintaks)
Flowchart Aplikasi pada Web Framework
Pemrograman Berorientasi Objek Page 15