1. TUGAS
PEMROGRAMAN BERBASIS WEB
Resume materi :
- OOP dengan PHP
- Konsep MVC dengan PHP
- Beberapa konsep penggunaan MVC yang terdapat pada PHP Frameworks
SUGENG 1310652044
NUR MUCHYIDIN 1310652045
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH JEMBER
2. A. OOP dengan PHP
PHP adalah sebuah bahasa pemrograman web yang berjalan di sisi server (server side)
Pemrograman berorientasi objek atau object-oriented programming (OOP) merupakan
suatu pendekatan pemrograman yang menggunakan object dan class. Dengan
menggunakan PHP 5, konsep object-oriented akan lebih cepat dan lebih efisien.
Ada 5 hal penting pada pemrograman berorientasi objek di php, yaitu
Konsep penting dalam OOP
a. Class
Class merupakan sekelompok kode yang dituliskan untuk mendefiniskan properti
(variable) dan method (function). Properti adalah sebuah data yang menjelaskan
tentang class dan method adalah perilaku yang dapat dilakukan oleh class (object)
Pembuatan class
- Class dimulai dengan keyword Class, diikuti dengan nama classnya.
- Isi suatu class diapit dengan kurung kurawal({ }).
- Umumnya isi class diawali dengan menuliskan propertinya dan diikuti dengan
method-methodnya
Contoh :
b. Object
Object adalah hasil instansiasi (perwujudan) dari class, dan mengandung seluruh
resource yang telah didefinisikan pada Class.
Instansiasi berfungsi untuk mengubah class menjadi objek (class adalah kumpulan dari
objek-objek).
Ciri-ciri penulisan Instansiasi : new
Instansiasi membutuhkan operator new untuk mempersiapkan memory sesuai dengan
isi kelas Ketika suatu instansiasi class (pembuatan objek) dilakukan, maka secara
otomatis akan memanggil function Constructor milik class tersebut.
<?php
include(orang.php); //file yang memuat class
$obj = new Orang(); //proses instansiasi object
?>
c. Constructor dan destructor
Constructor adalah sebuah fungsi yang otomatis akan dipanggil setiap kali melakukan
instasiasi terhadap suatu class dan digunakan untuk melakukan instasiasi nilai dari
data-data yang terdapat di dalam kelas yang bersangkutan.
Fungsi :
1. Mengalokasikan sebuah objek saat program dieksekusi
2. Memberikan nilai awal sebagai instasiasi dari sebuah atribut
3. Mengerjakan proses-proses yang diperlukan saat objek dibuat
3. Destructor adalah penghancur / penghapus yang secara otomatis akan dijalankan pada
saat berakhirnya objek.
Syarat dari construktor dan destructor adalah namanya harus sama dengan nama Class
d. Visibilitas member
Visibilitas dari properti atau method dapat dilakukan dengan mengawali pendefinisian
dengan keyword :
Public
Member ini dapat diakses dimanapun, walaupun dari luar classnya.
Private
Member ini hanya dapat diakses di dalam pendeklarasian classnya saja. Member ini
tidak dapat dikenal di class turunannya.
Protected
Mirip dengan private, tetapi member ini dapat dikenal di class turunannya.
Di dalam pengaturan visibilitas member,terdapat juga 2 fungsi yaitu 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.
Fuction Getter adalah suatu function yang digunakan untuk menghasilkan (get)
suatu nilai baik dari member public, private, protected atau pun dari hasil
perhitungan.
e. Inheritance (pewarisan)
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, keyword yang digunakan xtends. 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.
B. Konsep MVC (Model-View-Controller) dengan PHP
MVC (Model View Controller) pattern adalah sebuah pattern yang banyak digunakan untuk membangun
aplikasi web saat ini. MVC pattern terbagi menjadi 3 modul yaitu Model, View dan Controller
a. Model
Model berhubungan dengan data dan interaksi ke database atau webservice. Model
juga merepresentasikan struktur data dari aplikasi yang bisa berupa basis data maupun
data lain, misalnya dalam bentuk file teks, file XML maupun webservice. Biasanya di
dalam model akan berisi class dan fungsi untuk mengambil, melakukan update dan
menghapus data website. Sebuah aplikasi web biasanya menggunakan basis data dalam
menyimpan data, maka pada bagian Model biasanya akan berhubungan dengan
perintah-perintah query SQL.
b. View
View berhubungan dengan segala sesuatu yang akan ditampilkan ke end-user. Bisa
berupa halaman web, rss, javascript dan lain-lain. Di dalam view hanya berisi variabel-
variabel yang berisi datayang siap ditampilkan. View dapat dikatakan sebagai
halaman website yang dibuat dengan menggunakan HTML dan bantuan CSS atau
4. JavaScript. View hanya dikhususkan untuk menampilkan data-data hasil dari model
dan controller.
c. Controller
Controller bertindak sebagai penghubung data dan view. Di dalam Controller inilah
terdapat class-class dan fungsi-fungsi yang memproses permintaan dari View ke
dalam struktur data di dalam Model.
Penjelasan :
Ketika user melakukan request ke web server maka pertama kali yang di runing adalah file
controller, kemudian file controller ini akan mengecek, apakah memerlukan database atau
tidak, jika ya maka controller memanggil model => model melakukan pengolahan
database lalu mengembalikan hasilnya ke controller. Selanjutnya controller akan
memparsing hasil dari model tadi ke dalam vidan ditampilkan ke user.
C. Konsep penggunaan MVC pada framework
Salah satu framework yang menggunakan konsep MVC adalah Codeigniter. kelebihan
yang dimiliki oleh CodeIgniter antara lain segi kecepatan akses website, penulisan
program yang lebih terstruktur dan dukungan dari beberapa komunitas pendukung.
Contoh MVC pada Codeigneter
5. Penjelasan :
Ketika kita mengetikan sebuah alamat http://blog.wordpress.com, Proses itu langsung di
ambil alih oleh controller, setelah itu di controller jika ada data yang ingin di tampilkan
dari database, controller akan memanggil model dan, jika datanya ada, maka akan di
kembalikan lagi di controller kemudian diolah di controller setelah itu data tersebut di
kirim ke View dan siap di tampilkan di browser.