Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP...

18

Transcript of Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP...

Page 1: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi
Page 2: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

Membangun Aplikasi Web

dengan Metode OOP

Page 3: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

Sanksi Pelanggaran Pasal 113 Undang-Undang Nomor 28 Tahun 2014 tentang Hak Cipta

1. Setiap Orang yang dengan tanpa hak melakukan pelanggaran hak ekonomi sebagaimana dimaksud dalam Pasal 9 ayat (1) huruf i untuk Penggunaan Secara Komersial dipidana dengan pidana penjara paling lama 1 (satu) tahun dan/atau pidana denda paling banyak Rp100.000.000 (seratus juta rupiah).

2. Setiap Orang yang dengan tanpa hak dan/atau tanpa izin Pencipta atau pemegang Hak Cipta melakukan pelanggaran hak ekonomi Pencipta sebagaimana dimaksud dalam Pasal 9 ayat (1) huruf c, huruf d, huruf f, dan/atau huruf h untuk Penggunaan Secara Komersial dipidana dengan pidana penjara paling lama 3 (tiga) tahun dan/atau pidana denda paling banyak Rp500.000.000,00 (lima ratus juta rupiah).

3. Setiap Orang yang dengan tanpa hak dan/atau tanpa izin Pencipta atau pemegang Hak Cipta melakukan pelanggaran hak ekonomi Pencipta sebagaimana dimaksud dalam Pasal 9 ayat (1) huruf a, huruf b, huruf e, dan/atau huruf g untuk Penggunaan Secara Komersial dipidana dengan pidana penjara paling lama 4 (empat) tahun dan/atau pidana denda paling banyak Rp1.000.000.000,00 (satu miliar rupiah).

4. Setiap Orang yang memenuhi unsur sebagaimana dimaksud pada ayat (3) yang dilakukan dalam bentuk pembajakan, dipidana dengan pidana penjara paling lama 10 (sepuluh) tahun dan/atau pidana denda paling banyak Rp4.000.000.000,00 (empat miliar rupiah).

Page 4: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

Membangun Aplikasi Web

dengan Metode OOP

Anton Subagia

PENERBIT PT ELEX MEDIA KOMPUTINDO

Page 5: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

Membangun Aplikasi Web dengan Metode OOP

Anton Subagia 2018 PT Elex Media Komputindo, Jakarta Hak cipta dilindungi undang-undang Diterbitkan pertama kali oleh Penerbit PT Elex Media Komputindo Kelompok Gramedia, Anggota IKAPI, Jakarta 2018

[email protected]

71xx

ISBN: 978-

Dilarang keras menerjemahkan, memfotokopi, atau memperbanyak sebagian atau seluruh isi buku ini tanpa izin tertulis dari penerbit.

Dicetak oleh Percetakan PT Gramedia, Jakarta

Isi di luar tanggung jawab percetakan

Page 6: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

ix

DAFTAR ISI

Persembahan ................................................................................................. v Kata Pengantar .............................................................................................. vii Daftar Isi ......................................................................................................... ix Pembuka .......................................................................................................... xiii Instalasi Aplikasi ........................................................................................... xv

BAB. 1 Mengenal PHP, OOP, PDO, MVC dan AJAX ................. ....1

1.1 PHP ................................................................................................................ 1 1.1.1 Apa Itu PHP? ........................................................................................ 1 1.1.2 Perjalanan PHP .................................................................................... 2

1.2 OOP ............................................................................................................... 4 1.2.1 Pengertian OOP ................................................................................... 4 1.2.2 Prosedural VS OOP ............................................................................. 5

1.3 PDO ............................................................................................................... 7 1.3.1 Mengenal PDO ..................................................................................... 7 1.3.2 Keunggulan Menggunakan PDO ........................................................ 8

1.4 MVC .............................................................................................................. 8 1.4.1 Pengertian MVC ................................................................................... 8 1.4.2 Arsitektur MVC ................................................................................. 10 1.4.3 Keuntungan Menggunakan MVC .................................................... 10

1.5 AJAX ........................................................................................................... 11 1.5.1 Mengenal AJAX ................................................................................. 11 1.5.2 Keunggulan Menggunakan Ajax ...................................................... 12 1.5.3 Cara Kerja Ajax.................................................................................. 13

1.6 Mengenal Javascript ................................................................................... 14 1.6.1 Apa itu Javascript .............................................................................. 14 1.6.2 Kegunaan Javascript .......................................................................... 14 1.6.3 Menjalankan Javascript ..................................................................... 15

BAB. 2 Teori OOP dalam PHP ............................................ ....17

2.1 Class dan Objek .......................................................................................... 17 2.2 Property dan Method ................................................................................ 19 2.3 Cara Mengakses Objek .............................................................................. 20 2.4 Fungsi Variabel $this ................................................................................. 21 2.5 Argumen dan Method .............................................................................. 23

Page 7: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

x

2.6 Constructor dan Destructor ...................................................................... 25 2.7 Inheritance (Pewarisan/Penurunan) ........................................................ 28 2.8 Encapsulation ............................................................................................. 29 2.9 Scope Resolution Operator ....................................................................... 32 2.10 Keyword Parent dan Self ......................................................................... 33 2.11 Static Property dan Static Method .......................................................... 35 2.12 Class Contant (Konstanta Class) ............................................................. 37 2.13 Final Class dan Final Method .................................................................. 38 2.14 Abstract Class dan Abstract Method ....................................................... 39 2.15 Object Interface ........................................................................................ 41 2.16 Polimorfisme ............................................................................................ 44 2.17 Autoload Class .......................................................................................... 45 2.18 Namespace ................................................................................................ 46 2.19 Override .................................................................................................... 48 2.20 Overloading .............................................................................................. 48 2.21 Contoh Program class .............................................................................. 49

BAB. 3 Mengenal Bootstrap ............................................... ....53

3.1 Mengenal Bootstrap .................................................................................. 53 3.2 Desain Halaman Web .............................................................................. 54 3.3 Desain Halaman Admin ........................................................................... 55 3.4 PopUp Modal ............................................................................................ 63 3.5 Desain Halaman Login ............................................................................. 64

BAB. 4 Pengenalan Dasar QUERY SQL ............................... ....67

4.1 Mengenal SQL ........................................................................................... 67 4.2 Menyiapkan Database ............................................................................... 70 4.3 Perintah Query Insert Data ...................................................................... 76 4.4 Perintah Query Delete Data ..................................................................... 77 4.5 Perintah Query Update Data .................................................................... 78 4.6 Menampilkan Data ................................................................................... 79 4.7 Operator Aritmatika ................................................................................. 80 4.8 Operator Where ........................................................................................ 83 4.9 Fungsi Agregate ......................................................................................... 83 4.10 Mencari Data dengan Between ............................................................... 88 4.11 Menggabungkan Tabel ........................................................................... 89 4.12 Order By .................................................................................................. 94

BAB. 5 Dasar AJAX dengan JQUERY ................................... ....97

5.1 Mengenal Ajax JQuery .............................................................................. 97 5.2 Menampilkan Data dengan Ajax .............................................................. 97 5.3 Mengirim Data Form dengan Ajax ....................................................... 100

Page 8: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

1

1 Mengenal PHP, OOP, PDO,

MVC, dan AJAX

1.1 PHP

1.1.1 Apa Itu PHP?

PHP merupakan sebuah bahasa pemrograman yang berjalan dalam sebuah

web server (server side). PHP diciptakan oleh programmer Unix dan Perl,

bernama Rasmus Lerdoft pada bulan Agustus-September 1994. Pada awalnya,

Rasmus mencoba menciptakan sebuah script dalam website pribadinya untuk

memonitor siapa saja yang pernah mengunjungi website-nya.

Semula, PHP hanyalah sekumpulan script sederhana. Dalam perkembangan

selanjutnya, ditambahkan berbagai fitur pemrograman berorientasi objek.

Hal ini dimulai sejak PHP versi 4. Dengan lahirnya PHP 5, fitur-fitur

pemrograman berorientasi objek semakin mantap dan semakin cepat.

Page 9: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

2

Dengan PHP 5, script yang digunakan konsep object-oriented akan lebih

cepat dan lebih efesien. Dengan demikian, dapat disimpulkan bahwa

pemrograman berorientasi objek telah dimulai pada PHP 5.

1.1.2 Perjalanan PHP

Pada awalnya, PHP merupakan kependekan dari Personal Home Page (situs

personal), selanjutnya Rasmus merilis kode sumber tersebut untuk umum

dan menamakannya PHP/FI pada sekitar tahun 1995, dan diperkenalkan

kepada beberapa programmer pemula dengan alasan bahasa yang digunakan

oleh PHP cukup sederhana dan mudah dipahami.

Selanjutnya, Rasmus merilis ulang PHP dengan bahasa C untuk

meningkatkan kecepatan aksesnya.

Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan

digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi umum

secara gratis. Mengapa Rasmus membagikan ke publik secara gratis? Ia

beranggapan bahwa apabila kode PHP ini berguna bagi dirinya, tentu akan

bermanfaat untuk orang lain. Sehingga, pada akhirnya akan kembali

bermanfaat bagi dirinya sendiri.

Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini, interpreter PHP sudah

diimplementasikan dalam program C. Disertakan juga modul-modul ekstensi

yang meningkatkan kemampuan PHP/FI secara signifikan.

Pada tahun 1997, sebuah perusahaan bernama Zend menulis ulang

interpreter PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian

pada Juni 1998, perusahaan tersebut merilis interpreter baru untuk PHP dan

meresmikan rilis tersebut sebagai PHP 3.0 dan singkatan PHP dirubah

menjadi akronim berulang PHP, Hypertext Preprocessing.

Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis

tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling

banyak dipakai pada awal abad ke-21.

Page 10: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

3

Versi ini banyak dipakai karena kemampuannya untuk membangun aplikasi

web kompleks, tetapi tetap memiliki kecepatan dan stabilitas yang tinggi.

Pada Juni 2004, Zend merilis PHP 5.0. Dalam versi ini, inti dari interpreter

PHP mengalami perubahan besar. Versi ini juga memasukan model

pemrograman berorientasi objek ke dalam PHP untuk menjawab

perkembangan bahasa pemrograman ke arah paradigma berorientasi objek.

Hingga pada penghunjung tahun 2013 dikutip dari salah satu forum, PHP

sudah merilis versi 5.6.2, tepatnya pada tanggal 19 November.

PHP.net melalui situs resminya telah mengumumkan versi terbaru dari PHP,

yakni PHP 7.0.0 yang secara resmi dirilis pada tanggal

3 Desember 2015. Ada banyak perubahan signifikan, seperti namespace di

PHP 5.3 dan trait di PHP 5.4, tetapi versi yang masih dipakai masih tetap 5.x

belum menjadi PHP 7. Lantas, ke manakah PHP 6? Di manakan dia berada?

Kenapa dari PHP 5.x langsung update ke PHP 7.x? Apakah para core

developer PHP salah tulis? Rasanya itu tidak mungkin. Lalu kenapa ?

Beberapa tahun yang lalu, rencana pengembangan PHP 6 dengan beberapa

perubahan terutama pada bagian dukungan terhadap unicode dengan

menggunakan encoding UTF-16. Presentasi dan publikasi sudah dilakukan di

banyak tempat. User sudah terlanjur mengenal PHP 6 sebagai PHP yang

mendukung unicode, meskipun belum secara resmi di rilis. Namun,

Implementasi pada level interpreter agar mendukung UTF-16 tidak mudah

dilakukan. Sudah 4 tahun berlalu tanpa ada perkembangan berarti, pada

akhirnya PHP 6 menyerah. Selang beberapa tahun, PHP 5.6 belum

mendukung unicode. Ketika kemudian versi mayor akan dirilis, timbulah

pertanyaan, apakah akan dinamai versi 6 atau versi 7.

Page 11: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

4

Jika mengikuti kaidah penamaan yang normal, tentunya dari PHP 5

dilanjutkan ke PHP 6, karena pada kenyataanya PHP 6 pernah ada (meski

tidak pernah dirilis secara resmi), pernah menjadi perbincangan di mana-

mana dan menjadi referensi versi PHP yang mendukung UTF-16. Akhirnya,

setelah melalui sebuah proses diskusi, diputuskanlah PHP 7 sebagai nama

untuk versi Mayor.

1.2 OOP

1.2.1 Pengertian OOP

Pemrograman berorientasi objek atau object-oriented programming (OOP)

merupakan suatu pendekatan pemrograman menggunakan objek dan class.

Saat ini, konsep OOP sudah semakin berkembang. Hampir setiap perguruan

tinggi di dunia mengajarkan konsep OOP pada Mahasiswa/i-nya.

Pemrograman yang banyak dipakai dalam penerapan OOP adalah C++, Java,

Python, .Net, Ruby, Go, dan lain sebagainya.

Tujuan dari OOP adalah untuk memudahkan programmer dalam pembuatan

program dengan menggunakan konsep objek yang ada dalam kehidupan

sehari-hari. Jadi, setiap bagian permasalahan adalah objek, dan objek itu

sendiri merupakan gabungan dari beberapa objek yang lebih kecil.

Contoh objek dalam kehidupan sehari-hari, misalnya komputer. Komputer

merupakan objek yang terdiri dari objek-objek lain yang lebih kecil, berupa

motherboard, processor, vga card, ram, dan sebagainya. Objek-objek tersebut

akan saling berhubungan, berinteraksi, dan berkirim pesan satu sama lain.

Begitu juga dengan pemrograman OOP, permasalahan yang besar akan

dipecah menjadi permasalahan yang lebih kecil.

OOP bukanlah sekedar cara penulisan sintaks program yang berbeda, namun

lebih dari itu, OOP merupakan cara pandang dalam menganalisa system dan

permasalahan pemrograman. Dalam OOP, setiap bagian dari program adalah

object. Sebuah object mewakili suatu bagian program yang akan diselesaikan.

Page 12: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

5

Sebuah objek pada OOP memiliki data atau yang disebut property yang

menjelaskan tentang sifat-sifat objek tersebut. Seperti sebuah komputer dapat

memiliki data merk, ukuran, dan spesifikasi lainnya, objek-objek yang ada di

dalamnya, seperti motherboard juga memiliki data berupa jumlah slot usb,

dioda yang terpasang, bridge, dan sebagainya.

Selain memiliki property, sebuah objek dalam OOP juga memiliki method

berupa fungsi yang dapat dipanggil untuk melakukan tindakan atau

mengubah nilai dari property yang ada di dalamnya. Seperti komputer dapat

melakukan tindakan merekam/menyimpan data, membuat program/animasi,

bermain game dan sebagainya, komputer juga dapat diganti shassis tower-nya

untuk mengubah ukuran, dimensi maupun warna (mengubah nilai

property).

1.2.2 Prosedural VS OOP

PHP bukanlah pemrograman yang murni berbasis objek, seperti Java

misalnya. OOP dalam PHP merupakan fitur tambahan yang mulai ada pada

PHP versi 4. Di dalam PHP, kita dapat membuat program dengan konsep

OOP maupun tidak. Pembuatan program tanpa konsep OOP dalam PHP

biasa disebut dengan pemrograman procedural.

Pemrograman procedural lebih cocok jika digunakan pada project aplikasi

dengan skala kecil. Namun, untuk pengerjaan aplikasi yang kompleks, apalagi

dikerjakan bersama team akan lebih baik jika menggunakan konsep OOP.

Membuat program dengan konsep Prosedural maupun OOP, masing-masing

memiliki kelebihan dan kekurangan.

Kelebihan Prosedural

Efektif digunakan untuk menyelesaikan masalah-masalah yang kecil dan

tidak terlalu rumit.

Memperhatikan urut-urutan/langkah-langkah perintah secara sistematis,

logis, dan tersusun berdasarkan algoritma yang sederhana.

Page 13: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

6

Kekurangan Prosedural

Tidak cocok untuk menyelesaikan masalah yang rumit karena akan sulit

menemukan solusi permasalahan ketika terjadi error.

Kelebihan OOP

Data dan fungsi dikemas dalam class-class atau objek-objek.

Efektif digunakan untuk menyelesaikan masalah yang cukup besar

karena OOP terdiri dari class-class yang memisahkan setiap kode

program menjadi kelompok-kelompok kecil, sesuai dengan fungsinya.

Fungsi-fungsi algoritma yang terbagi menjadi beberapa class dapat

memudahkan kita dalam memahami program, begitu pula ketika ada

kesalahan program (bug/error) pada program, kita dapat lebih mudah

menemukan penyebab error-nya dibanding ketika menggunakan konsep

procedural.

Object dan class dapat digunakan berkali-kali, sehingga dapat

menghemat tempat (space/memory).

Setiap object dapat ditambah kemampuannya tanpa mengganggu object

lain.

Setiap object dapat dipakai dalam project yang lain tanpa perlu banyak

penyesuaian.

Kekurangan OOP

Programmer yang telah terbiasa membuat program dengan konsep

procedural sering merasa kesulitan ketika dihadapkan dengan OOP,

biasanya mereka akan merasa kebingungan dengan banyaknya istilah-

istilah OOP.

Page 14: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

7

Sebagai penjelasan lebih detailnya, dapat digambarkan dalam table

perbandingan Prosedural dengan OOP.

Prosedural OOP

Fokus utama pada fungsi dan prosedur

yang beroperasi pada data

Menekankan pada data yang sedang

beroperasi

Program besar terbagi dalam

program/unit kecil yang disebut dengan

fungsi

Program terbagi ke dalam apa yang

disebut dengan object

Data dan fungsi diperlakukan sebagai

entitas terpisah

Data dan fungsi bersama diperlakukan

sebagai entitas terpisah

Data dapat bergerak bebas di sekitar

system dari satu fungsi lain

Data tersembunyi dan tidak dapat diakses

oleh fungsi eksternal

Data bersifat pasif Object-object dalam OOP aktif

Program desain dengan pendekatan

“Top Down”, yaitu tugas-tugas yang

kompleks dipecah menjadi bagian yang

lebih kecil, sampai sub-tugas tersebut

mudah diimplementasikan

Program desain pendekatan “Bottom

Up”, yaitu membuat prosedur-prosedur

untuk menyelesaikan tugas-tugas yang

sederhana, lalu menggabungkan

prosedur-prosedur tersebut dalam

prosedur yang kompleks sampai

fungsionalitas tercapai

Dapat kita tarik kesimpulan bahwa konsep OOP lebih baik dan lebih unggul

dari pada Prosedural.

1.3 PDO

1.3.1 Mengenal PDO

PDO (PHP Data Objects) adalah extension atau penambahan fitur dalam

PHP yang dirancang sebagai interface universal untuk pengaksesan berbagai

jenis database. Contohnya, jika kita menggunakan PDO dalam menulis kode

pemrograman lalu suatu saat website kita bertukar database dari MySQL ke

Page 15: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

8

Oracle, maka kita tidak perlu mengubah semua kode program, cukup

mengubah cara pemanggilan PDO di awal program saja.

Berikut contoh cara pengaksesan database menggunakan PDO:

1. $pdo = new PDO (‘mysql:host=localhost; dbname=kuliah’, ‘root, ‘xxx’);

2. $statement = $pdo -> query (“select nim, nama_mhs from mahasiswa”);

3. $row = $statement -> fetch (PDO::FETCH_ASSOC);

Pada contoh di atas, dianggap bahwa user MySQL adalah root, passwordnya

adalah xxx, nama databasenya adalah kuliah dan nama tabelnya adalah

mahasiswa.

1.3.2 Keunggulan Menggunakan PDO

Ada beberapa keunggulan menggunakan PDO, di antaranya:

Support 12 jenis database dengan script yang sama. Hanya sedikit

perubahan query-nya, jenis database tersebut di antaranya MySql,

Oracle, Ms SQL Server, Porsgre SQL, dan lain sebagainya.

PDO membantu mencegah SQL Injection. Dengan PDO BindParam,

statement parameter ataupun inputan dari user secara otomatis difilter.

Sudah mendukung database transaction.

PDO lebih cepat bila dibandingkan dengan menggunakan fungsi yang

lain.

1.4 MVC

1.4.1 Pengertian MVC

MVC merupakan singkatan dari Model-View-Controller, merupakan sebuah

metode untuk membuat sebuah aplikasi dengan memisahkan antara data

(Model) dari tampilan (View) dan cara bagaimana memprosesnya

Page 16: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

9

(Controller). Dengan kata lain, konsep MVC merupakan suatu metode dalam

pemrograman dengan memisahkan komponen utama yang membangun

aplikasi, yaitu memanipulasi data, user interface, dan juga bagian yang

mengontrol aplikasi.

Dalam implementasinya, tidak sedikit framework dalam aplikasi website

berbasis arsitektur MVC, misalnya CodeIgniter, Laravel, CakePHP, Yii,

Phalcon, Zend, PHPixie, Symfony, dan sebagainya.

Penjelasan lebih lengkap mengenai 3 komponen utama dalam konsep MVC

adalah sebagai berikut:

Model, merupakan bagian yang berhubungan langsung dengan database

untuk memanipulasi data (Insert, Update, Delete, maupun Search),

menangani validasi dari bagian Controller, namun tidak dapat langsung

berhubungan dengan bagian View.

View, merupakan bagian yang berisi skrip untuk menerima dan

mempresentasikan data kepada user. Bagian ini biasanya berupa

template HTML yang penampilannya diatur oleh Controller. View

berfungsi untuk menerima dan mempresentasikan data kepada user.

Bagian ini tidak memiliki akses langsung terhadap bagian Model.

Controller, merupakan bagian yang mengatur hubungan antara bagian

Model dan bagian View. Controller berfungsi untuk menerima request

dan data dari user kemudian menentukan apa yang akan diproses oleh

aplikasi.

Dalam metodenya, system dari MVC ini cukup sederhana, yakni

mengelompokan setiap bagian sesuai dengan fungsinya. Dapat disimpulkan

bahwa halaman yang di-request oleh user akan di-control oleh Controller,

lalu Controller akan memberikan sebuah tampilan kepada user berupa View,

dan untuk bagian transaksi data/database akan diatur oleh Model

Page 17: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

10

1.4.2 Arsitektur MVC

Secara sederhana, arsitektur MVC dapat dijelaskan melalui gambar berikut:

Gambar 1.1 Konsep MVC

Pada gambar di atas, ketika user meminta (request) atau mengirim data

melalui URL website, maka Controller yang akan menangani request

tersebut. Jika dalam prosesnya membutuhkan data dari database, maka

Controller akan memberikan tugas tersebut kepada Model. Model akan

langsung berhubungan dengan Database untuk melakukan transaksi data

(memasukkan, mengambil, memperbaharui, atau menghapus) sesuai

permintaan dari user. Selanjutnya, data yang diterima dari Model akan

diserahkan pada View oleh Controller untuk ditampilkan pada halaman

website melalui browser dalam bentuk file HTML.

1.4.3 Keuntungan Menggunakan MVC

Dibandingkan dengan cara konvensional, pemrograman dengan teknik MVC

memiliki beberapa keuntungan, di antaranya adalah sebagai berikut:

Operasi data hanya dilakukan pada area yang ditentukan (Model) tidak

tersebar ke seluruh aplikasi, sehingga memudahkan dalam proses

pemeliharaan aplikasi.

Page 18: Membangun Aplikasi Web dengan Metode OOP · Mulai bulan September sampai Oktober 1995, kode PHP ditulis ulang dan digabungkan menjadi PHP/FI. Baru di akhir tahun 1995 dirilis bagi

Catata

Untuk m

Layanan

Grame

Jl. Palm

ext: 390

An

pr

stu

Jak

Pe

me

ked

ini

art

bil

Bil

yan

dj_

an:

melakukan pem

n Langsung PT

edia Direct

erah Barat No

Telemarketin

01/3902/32

nton Subagi

rogramming w

udy Sistem Info

karta.

nulis pernah

enjabat sebagai

duanya. Banyak

i, terutama di da

tikel di web mau

la dalam waktu s

la ada pertanyaa

ng membangun,

_anton16@yah

mesanan buku

T Elex Media

o. 29-37, Jak

g/CS: 021-5

292

TE P

ia adalah

web, alumnus S

ormasi di salah

bekerja di be

staff admin d

k hobby penulis

alam bidang Tek

upun membaca b

senggang.

an atau komenta

, penulis dapat d

hoo.com

u, hubungi

Komputindo:

karta 10270

3650110/11

ENTAPENU

seorang des

Sarjana dengan

satu perguruan

eberapa perusah

dan IT maupun

s yang dilakukan

khnologi Inform

buku, desain da

ar-komentar, kr

dihubungi melalu

11

309

ANG ULIS

sainer dan

n mengambil

tinggi swasta

haan dengan

n merangkap

n hingga saat

masi, membaca

an editing foto

itik dan saran

ui email: