Modul PemwebLan 2019 OOP MVC
Modul PemwebLan 2019 OOP MVC
Modul Praktikum 1
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Praktikum 1 : Review Pemrograman Web Dasar
A. TUJUAN PEMBELAJARAN
Mahasiswa dapat menggunakan perintah dasar pemrograman web dengan database
1. Mahasiswa mampu menggunakan php link dalam web
2. Mahasiswa mampu menggunakan database dalam web
3. Mahasiswa mampu menggunakan session dalam web
C. MATERI:
Mahasiswa menggunakan html form, php link, database dan session dalam membuat bagian aplikasi
sederhana
D. PRAKTIKUM
Mahasiswa mengulang materi desian web dan pemrograman web dasar lewat latihan materi
form, database dan session
E. TUGAS
1. Mahasiswa membuat form dengan html dengan type yang berbeda-beda (text, radio,
checkbox, select, textarea ) untuk inputan data di satu tabel
2. Menggunakan login (session) untuk CRUD untuk satu tabel di database
Modul Praktikum 2
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Praktikum 2 : Pengantar OOP dasar dengan PHP
A. TUJUAN PEMBELAJARAN
Mahasiswa mampu menggunakan OOP dasar php terkaitan aturan class, pembuatan object, pembuatan
method dalam program PHP
C. MATERI:
Penggunaan Atribut dan Class
Membuat OOP di php mempunyai aturan tersendiri sehingga sebelum mengenal framework lebih
baik mempelajari terlebih dahulu bagaimana membuat class, atribut dan method/fungsi di php.
Membuat class di php awalnya dengan mendeklarasikan class itu sendiri. Dengan aturan identifier
di php maka nama kelas haruslah satu kata dengan tanpa spasi dan awalnya tidak boleh angka
(jika terdapat dua kata atau lebih dapat menggunakan tanda _ (undercase)
Kelebihan Menggunakan OOP
1. Dengan OOP, kode-kode yang kita buat menjadi lebih rapih dan terstruktur.
2. Dengan OOP, proses reuse kode-kode yang kita buat untuk project yang hampir sama,
mudah, karena kode yang kita buat rapih dan terstruktur. Sehingga untuk mengubah atau
reuse kode jauh lebih mudah.
3. Konsepnya per modul. Fungsi atau prosedur misal di java atau di PHP tinggal panggil saja
nama fungsinya. Jika bermasalah nantinya akan mudah diketahui karena terbaca dari
fungsi yang kita panggil. Itulah yang dimaksud konsep per modul. Sehingga dengan OOP,
kita dimudahkan untuk membuat dan membaca kode kita (efisiensi kode).
4. Konsep OOP juga memudahkan kita untuk menganalisa program yang kita akan buat. Ini
akan sangat terasa kalau kita membuat program besar dan rumit.
Kekurangan Menggunakan OOP
1. Kesulitan dalam ide programnya yang dapat digunakan dalam program
2. Membangun awal perlu ketrampilan programing lebih
D. PRAKTIKUM
Contoh deklarasi class di php dengan atribut dan methodnya
Modul Praktikum 3
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Berikut adalah cara untuk memanggil menggunakan class dengan membuat file misal
mhsaksi.php dengan script sebagai berikut :
Pada gambar diatas adalah contoh membuat object baru berdasarkan class yang sudah ada dan
memanggil methodnya. Kemudian diakses browser lewat alamat servernya tampilannya menjadi :
Modul Praktikum 4
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Penggunaan selanjtnya untuk inputan lewat form melalui class adalah sebagai berikut
(ditambahkan dari class sebelumnya)
Modul Praktikum 5
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Hasil dari penggunaan form lewat class adalah sebagai berikut
Modul Praktikum 6
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
E. TUGAS
1. Buatlah form untuk menginput dan mencetak hasil 3 jenis inputan data (text, radio dan
select).
2. Lanjutkan nomor 1 dengan menyimpan dan mencetak ke dan dari database (input dan
cetak database menggunakan method terpisah)
Modul Praktikum 7
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Praktikum 3 : Contructor, Encapsulation dan Inheritance dengan PHP
A. TUJUAN PEMBELAJARAN
1. Mahasiswa mampu menggunakan contructor dalam program PHP
2. Mahasiswa mampu membuat aturan keamanan akses atribut dan method menggunakan encapsulation
dalam program PHP
3. Mahasiswa mampu mengembangkan class menggunakan inheritance dalam program PHP
C. MATERI:
Pengertian OOP
OOP adalah cara pandang atau pola pikir dalam menganalisa suatu sistem atau permasalahan
pemrograman, dalam OOP semua bagian program dianggap sebagai object
Beberapa konsep dasar OOP
1. Class, Object
2. Encapsulation (method dan atribut dalam class)
3. Inheritance (Penurunan sifat)
4. Polimorfisme
Mobil, hewan, orang adalah Class dan nantinya bisa diciptakan objectnya, bukan hanya fisik saja
bisa juga berupa abstrak seperti account bank, file di komputer, pesan email, acara tv dan lain-lain.
Object mempunyai properties (atribut) dan melakukan sesuatu (behavior / method)
Class adalah penjelasan dari object seperti untuk object mobil paling tidak mempunyai penjelasan
properties tentang warna, tahun rakit dan penjelasan melakukan sesuatu seperti cara mengerem,
cara parkir dll.
Contoh class : mobil, contoh object : mobil pak udin, mobil di depan rumah, penjelasan properties
disebut atribut dan penjelasan melakukan sesuatu disebut method
D. PRAKTIKUM
Contructor
Constructor adalah memberikan method / funsi default yang akan dijalankan ketika object
diciptakan
Modul Praktikum 8
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Kemudian digunakan pada mhsaksi.php dengan script berikut :
Encapsulation OOP
Modul Praktikum 9
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Dengan menambahkan private pada salah satu atribut sebagai berikut berikut
Modul Praktikum 10
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Untuk atribut private tidak diperbolehkan diakses diluar class dan harus diakses lewat class (lewat
method seperti contoh berikut)
Modul Praktikum 11
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Penurunan Class (Inheritance)
Penurunkan class mahasiswa menjadi mahasiswaD3 seperti contoh berikut :
Modul Praktikum 12
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Diakses browser sebagai berikut :
E. TUGAS
a. Buatlah Superclass Circle dan Subclass Cylinder
b. Buat fungsi Menghitung Luas (getArea()) pada Class Circle
c. Buat fungsi Menghitung Volume dan Luas Permukaan (menggunakan nama fungsi yang sama :
getArea()) pada Class Cylinder yang menggunakan gabungan fungsi yang telah ada pada Class Circle
(getArea())
Modul Praktikum 13
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Praktikum 4 : Menggunakan Ide OOP class form
A. TUJUAN PEMBELAJARAN
1. Mahasiswa mampu menggunakan class form (salah satu ide OOP) dalam program PHP
2. Mahasiswa mampu mengembangkan class form dalam program PHP
C. MATERI:
Penggunaan Class Form
Mahasiswa mempelajari salah satu ide programing class form dalam program PHP
D. PRAKTIKUM
Mencoba Ide Class Form
Berikut adalah adalah salah satu contoh ide dari class. Script untuk class form ini dapat
digunakan untuk menampilkan form secara umum
<?php
class Form{
var $fields = array();
var $action;
var $submit = "";
var $jumField=0;
function displayForm(){
echo"<form action='".$this->action."' method='post'>";
echo"<table widht='100%'>";
for($i=0;$i<count($this->fields);$i++)
{
Modul Praktikum 14
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
echo"<tr>
<td align='right'>".$this->fields[$i]['label']."</td>";
echo"<td><input type='text' name='".$this->fields[$i]['name']."'></td>
</tr>";
}
echo"<tr><td></td><td><input type='submit' name='tombol'
value='".$this->submit."' ></td></tr>";
echo"</table>";
}
function addField($name,$label){
$this->fields[$this->jumField]['name']=$name;
$this->fields[$this->jumField]['label']=$label;
$this->jumField++;
}
}
?>
Kemudian untuk menampilkan hasilnya dengan memanggil dalam tampilForm sebagai berikut
Modul Praktikum 15
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
E. TUGAS
1. Lengkapilah ide form dengan hasil inputan dari form
2. Tambahkan form dengan type inputan selain text misalkan radio, checkbox, select dan
textarea.
Modul Praktikum 16
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Praktikum 5 : Menggunakan Patern MVC
A. TUJUAN PEMBELAJARAN
1. Mahasiswa mampu menggunakan OOP dan MVC dalam program PHP
2. Mahasiswa mampu mengembangkan OOP dan MVC dalam program PHP
C. MATERI:
MVC adalah singkatan dari Model View Controller. MVC adalah teknik pemrograman yang
memisahkan bisnis logic (alur pikir), data logic (penyimpanan data) da presentation logic
(antarmuka aplikasi) atau secara sederhana adalah memisahkan antara desain, data dan proses.
Model
Berhubungan dengan data dan interaksi ke text base, database atau webservice. Biasanya di
ddlama model berisi akan berisi class dan fungsi untuk mengambil, melakukan update dan
menghapus data web.
View
Berhubungan dengan segala sesuatu yang ditampilkan ke end-user. Bisa berupa halaman
web, rss, javascript dan lain-lain. Kita harus menghindari adanya logika atau pemprosesan
data di view. View bisa dikatakan sebagai halaman yang dibuat dengan HTML dan bantuan
CSS atau Javascript.
Controller
Controller bertindak sebagai penghubung data dan view. Di Dalam controller inilah terdapat
class-class dan fungsi-fungsi yang dapat memproses permintaan dari view ke dalam struktur
data di dalam model. Controller juga tidak boleh berisi kode utuk mengakses basis data.
Tugasnya adalah menyediakan berbagai variabel yag akan ditampilkan di view, memanggil
model untuk melakukan akses ke basis data, menyediakan penanganan kesalahan,
mengerjakan proses logika dari aplikasi dan melakukan validasi atau cek terhadap input.
Modul Praktikum 17
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
D. PRAKTIKUM
Berikut adalah adalah salah satu contoh program web OOP dan MVC
Modul Praktikum 18
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Modul Praktikum 19
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
E. TUGAS
1. Buatlah tampilan list data buku dari tabel database menggunakan OOP dan MVC
2. Buatlah inputan data buku ke database menggunakan OOP dan MVC
Modul Praktikum 20
Pemrograman Web Lanjut © D3 Teknik Informatika 2019
Praktikum 6 : Menggunakan OOP MVC untuk CRUD
A. TUJUAN PEMBELAJARAN
Mahasiswa mampu menggunakan OOP dengan ide class form dan MVC dalam CRUD tabel database
C. MATERI:
project kelompok CRUD OOP dan MVC
D. PRAKTIKUM
Mahasiswa membuat program secara berkelompok membuat CRUD tabel di database menggunakan OOP
dengan ide class form dan pattern MVC dalam program PHP
E. TUGAS
Pilih tema (tidak boleh sama dalam satu kelas) untuk isian 1 tabel CRUD produk barang maupun
jasa sebagai tugas kelompok menggunakan OOP dan ide class form yang ditambahkan pattern MVC.
Contoh tema :
Data Buku Perpustakaan, Data Tiket Kereta Api, Data Paket Outbond, Data Kamar Hotel, Data
Kelas Materi Kursus Komputer, Data Menu Restoran Cepat Saji.
Modul Praktikum 21
Pemrograman Web Lanjut © D3 Teknik Informatika 2019