Anda di halaman 1dari 18

Pemrograman Web Dan Perangkat Bergerak

Copyright @ 2019 maliki.id

A. IDENTITAS MATA PELAJARAN


1. Mata Pelajaran : Pemrograman Web Dan Perangkat Bergerak
2. Kelas/Semester : XII/I (Ganjil)
3. Alokasi Waktu : 26 jam di kelas + 50 jam di luar kelas
4. Standar Kompetensi : Menerapkan aplikasi web dengan Model View Controler
5. Kompetensi Dasar
3.23 Menerapkan aplikasi web dengan Model View Controler (MVC)
4.23 Membuat aplikasi web menggunakan Model View Controler (MVC)
6. Indikator
3.23.1 Menjelaskan konsep MVC dalam aplikasi web.
3.23.2 Menjelaskan prosedur pemrograman aplikasi web dengan MVC.
3.23.3 Menerapkan MVC kedalam program aplikasi web.
4.23.1 Merancang program aplikasi web dengan MVC.
4.23.2 Membuat kode program aplikasi web menggunakan MVC.
4.23.3 Menguji program aplikasi web berbasis MVC.
7. Materi Pokok
Konsep MVC
Macam-macam MVC untuk aplikasi web (Code Igniter, Zend, symphony dsb).
Prosedur penggunaan MVC untuk aplikasi berbasis web.
8. Pengalaman Belajar
1. Siswa menjelaskan konsep MVC dalam aplikasi web.
2. Siswa menjelaskan prosedur pemrograman aplikasi web dengan MVC.
3. Siswa menerapkan MVC kedalam program aplikasi web.
4. Siswa merancang program aplikasi web dengan MVC
5. Siswa membuat kode program aplikasi web menggunakan MVC.
6. Siswa menguji program aplikasi web berbasis MVC.
9. Alat dan Bahan
1. Laptop
2. Aplikasi PDF reader atau yang sejenis
3. Aplikasi IDE Text Editor (Sublime Text, Notepad++. Visual Studio Code, dll)
4. Aplikasi Web Browser (Google Chrome, Firefox, dll)
5. Aplikasi Local Server (XAMPP, WAMPP, LAMP, dll)
6. Aplikasi Version Control System (Git & Github)
Pemrograman Web Dan Perangkat Bergerak 2
Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

10. Daftar Pustaka


Huda, Nurul, 2018. Memahami Konsep MVC (Model-View-Controller). (Online)
https://jagongoding.com/blog/post/memahami-konsep-mvc Diakses Juni
2019.
Galih, Sandhika, 2018. Membuat Aplikasi MVC dengan PHP. (Online)
https://www.youtube.com/playlist?list=PLFIM0718LjIVEh_d-
h5wAjsdv2W4SAtkx Diakses Juni 2019.
C, Ariata, 2019. 8 Framework PHP Terbaik untuk Developer. (Online)
https://www.hostinger.co.id/tutorial/framework-php/ Diakses Juni 2019.

B. PETA KONSEP

Konsep MVC

MVC MVC untuk aplikasi web

Prosedur penggunaan MVC

Pemrograman Web Dan Perangkat Bergerak 3


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

Aplikasi Web dengan MVC


Dian Purwanto
dianpw@ymail.com | maliki.id

Lisensi Dokumen:
Copyright © 2019 maliki.id
Seluruh dokumen maliki.id dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk
tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut
penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak
diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari
maliki.id.

Konsep arsitektur MVC atau Model-View-Controller, kemungkinan besar adalah


istilah yang paling sering disebutkan dalam dunia web-programming beberapa tahun
terakhir ini. Orang-orang yang bersinggungan secara langsung atau pun tidak
langsung dengan dunia pembangunan aplikasi berbasis web pasti pernah
mendengar istilah MVC, dikarenakan kepopuleran dan urgensitas-nya.

INFORMASI: Model View Controller pertama sekali dipublikasikan


oleh peneliti XEROX PARC yang bekerja dalam
pembuatan bahasa pemrograman Smalltalk sekitar tahun
1970-1980.

A. Apa itu MVC


Bayangkan kalau anda diminta untuk mengembangkan sebuah aplikasi web,
sederhana, yang hanya memiliki beberapa lembar spesifikasi kebutuhan. Karena
sangat suka mengembangkan web, anda dengan bersemangat langsung menuju
kantor dengan spesifikasi kebutuhan di tangan, untuk secepat mungkin
Do Not Distrub
dipasang. Tab Facebook dan Twitter ditutup. Dan anda mulai bekerja. Coding
dan coding dan coding.

Pemrograman Web Dan Perangkat Bergerak 4


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

Dua minggu kemudian, aplikasi web yang diminta sudah selesai dikembangkan.
Dengan penuh senyuman anda mempresentasikan web yang telah
dikembangkan ke klien. Selesai presentasi, klien meminta beberapa perubahan.
Bentuk font-nya kurang bagus. Biru di warna latarnya coba digelapkan sedikit.
Elemen navigasi terlalu naik. Tolong ditambahkan data pengunjung halaman.
Dan masih banyak perubahan lainnya. Anda lalu kembali bekerja untuk
memperbaiki aplikasi, dan kemudian melakukan presentasi lagi. Hal ini terjadi
berulang kali, sampai akhirnya di akhir proyek, kode aplikasi web anda sudah
tidak dapat dikenali.

Kenapa kode tidak lagi dapat dikenali? Ada banyak faktor. Misalnya, kode untuk
menampilkan HTML tercampur dengan kode query basis data karena tambahan
fitur yang diminta oleh klien pada tengah malam. Waktu itu, anda terlalu
mengantuk untuk berpikir jernih dan akhirnya kode tercampur dan sulit diubah
lagi karena perubahan di satu tempat akan merusak kode di tempat lain.
Mungkin ada kode penanganan kesalahan yang bercampur dengan kode
penulisan tampilan, karena anda terburu-buru mengubahnya begitu selesai
rapat. Intinya adalah, kode menjadi buruk dan sulit dikembangkan. Kenapa?
Karena semua bagian kode sudah tercampur aduk seperti spaghetti.

Untuk menghindari kode agar tidak menjadi spaghetti, maka kita harus
menerapkan prinsip Pembagian Fokus (Separation of Concern). Secara singkat,
SoC atau Separation of Concern merupakan teknik di mana kita membagi-
bagikan kode ke dalam beberapa bagian. Masing-masing bagian kode ini
kemudian memiliki tanggung jawabnya masing-masing. Bisa saja ada bagian
kode yang khusus menangani basis data. Ada bagian kode yang menangani
tampilan. Ada bagian kode yang menghubungkan tampilan dengan basis data.

MVC, atau Model View Controller, merupakan salah satu implementasi prinsip
SoC untuk aplikasi yang kita kembangkan. MVC adalah konsep arsitektur dalam
pembangunan aplikasi berbasis web yang membagi aplikasi web menjadi 3
bagian besar. Yang mana setiap bagian memiliki tugas-tugas serta tanggung
jawab masing-masing. Tiga bagian tersebut adalah: model, view dan controller.

Pemrograman Web Dan Perangkat Bergerak 5


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

Model: Bertugas untuk mengatur, menyiapkan, memanipulasi dan


mengorganisasikan data (dari database) sesuai dengan instruksi dari
controller.
View: Bertugas untuk menyajikan informasi (yang mudah dimengerti)
kepada user sesuai dengan instruksi dari controller.
Controller: Bertugas untuk mengatur apa yang harus dilakukan model,
dan view mana yang harus ditampilkan berdasarkan permintaan dari user.
Namun, terkadang permintaan dari user tidak selalu memerlukan aksi dari
model. Misalnya seperti menampilkan halaman form untuk registrasi user.

INFORMASI: Sebagai prinsip yang memberikan solusi untuk


permasalahan umum, MVC juga merupakan design
pattern. Meskipun memberikan prinsip dasar yang
sama, implementasi MVC biasanya akan berbeda-beda,

Secara kasar, berikut adalah arsitektur aplikasi web kita jika dikembangkan
dengan menggunakan pola MVC:

Gambar 1 Arsitektur Sederhana MVC

Alur kerja aplikasi web kita ketika user mengunjungi salah satu halaman yaitu:
1. Browser (user) berhubungan dengan server untuk akses halaman.
2. Request (permintaan) browser ditangani oleh bagian Controller dari kode
kita.
3. Controller akan melakukan pemanggilan ke Model untuk mendapatkan
data (database) yang relevan, dan kemudian mempersiapkan data
tersebut untuk ditampilkan.
4. Controller memberikan data yang diperlukan kepada view.
Pemrograman Web Dan Perangkat Bergerak 6
Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

5. View menampilkan data dan berbagai elemen antarmuka tambahan yang


diperlukan.

Meskipun memerlukan banyak langkah hanya untuk menampilkan satu halaman


web, kita dapat langsung melihat keuntungan tambahan dari penggunaan MVC,
yaitu bagaimana setiap bagian memiliki tanggung jawab masing-masing. Ingin
mengubah query yang digunakan agar menjadi lebih cepat? Langsung saja edit
kode pada bagian Model. Designer juga dapat bekerja pada bagian view jika
ingin mengubah tampilan, tanpa perlu takut merusak keseluruhan kode. Pastinya
hal seperti ini akan mempercepat dan mempermudah pengembangan web kita.

Contoh Kasus:
Ketika anda memasuki perpustakaan kemungkinan anda diminta untuk mengisi
buku tamu. Kebetulan buku tamu di perpustakaan yang anda kunjungi
menggunakan aplikasi web. Jadi di sana sudah terdapat satu komputer, di mana
setiap pengunjung perpustakaan harus melewati dan mengisi datanya melalui
komputer tersebut.
1. Ketika anda melihat layar komputer, di sana ditampilkan form untuk
mengisi data diri pengunjung. Kita bisa simpulkan bahwa di sini, browser
(sebagai client) meminta aksi kepada server (yang ditangani oleh
controller) untuk menampilkan halaman form input data. Lalu controller
memutuskan dan mengerti bahwasanya ia hanya perlu menampilkan
view. Maka controller memanggil dan mengembalikan view (atau
halaman) yang diminta.
2. Anda kemudian mengisi data. Lalu menekan tombol submit. Di sini
browser (sebagai client) mengirimkan data anda kepada server. Data itu
ditangkap oleh controller dan controller tahu apa yang harus dia lakukan.
Yaitu memanggil model dan memberi data tersebut untuk kemudian
disimpan (oleh model) ke dalam database. Setelah proses penyimpanan
selesai, controller memanggil dan mengembalikan view kepada user
sebagai informasi bahwa data telah masuk.
3. Jika ada pengunjung baru, maka kembali ke step 1.

Pemrograman Web Dan Perangkat Bergerak 7


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

B. Macam-macam MVC untuk aplikasi web


Ada banyak hal yang harus dikerjakan jika ingin membuat dan mengembangkan
website atau aplikasi dari nol, salah satunya adalah menciptakan fungsionalitas.
Sayangnya terkadang fungsionalitas yang sudah ada hanya diperbarui, dan itu
dilakukan berkali-kali. Sama seperti ketika ban ditemukan pertama kali. Lalu
seiring berjalannya waktu, ban hanya akan diperbarui menurut tuntutan pasar
dan kebutuhan mobil atau motor. Agar Anda tidak perlu melakukan repetisi
terhadap suatu fitur atau fungsionalitas, gunakan framework software. Software
ini akan menyediakan fondasi di mana Anda bisa mewujudkan website atau
aplikasi yang diinginkan.

Di dalam dunia pengembangan software merujuk pada


tempat penyimpanan file yang memuat beberapa fungsi dasar. Tujuannya untuk
menyediakan fondasi bagi para developer agar bisa mengembangkan proyek
dengan lebih efisien. Terlebih lagi jika ingin mengembangkan proyek dari awal,
tentu Anda harus memprogramkan berbagai fungsi yang ada.

Apabila ingin mengembangkan aplikasi PHP baru, pilihlah PHP framework yang
sudah punya semua fungsionalitas yang dibutuhkan. Ada banyak framework
yang bisa digunakan, dan masing-masing menawarkan metode pengembangan
yang unik.

Bagi yang sudah pernah menggunakan framework sebelumnya, pasti tahu kalau
masing-masing tool beda dan punya keunikan tersendiri. Karena itulah, sebisa
mungkin kami menyediakan informasi yang diperlukan agar Anda bisa memilih
framework PHP terbaik yang sesuai dengan kebutuhan website atau aplikasi.

Berikut daftar PHP framework diurut berdasarkan tingkat popularitas, spesifikasi


teknis, dan kemampuan untuk meningkatkan efisiensi pengembangan:

Pemrograman Web Dan Perangkat Bergerak 8


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

1. Laravel (https://laravel.com/)

Gambar 2 Home laravel

Berbicara soal framework PHP, salah satu nama yang sudah familiar di
kalangan para developer adalah Laravel. Framework ini dikenal karena
memiliki syntax yang mudah dipahami dan digunakan.

Dengan Laravel, website dan aplikasi dapat dikembangkan dalam waktu


singkat. Bahkan Anda tidak perlu memikirkan pekerjaan-pekerjaan dasar
karena Laravel telah menyediakan fungsi, seperti otentikasi user,
manajemen sesi, dan caching. Singkatnya, Laravel menawarkan semua
fungsionalitas yang Anda butuhkan untuk membuat serta mengembangkan
aplikasi PHP modern.

Ada beberapa alasan teknis mengapa Laravel di tempatkan di urutan


pertama. Dari segi performa, framework ini memiliki core yang dapat
diandalkan serta dikembangkan dengan menggunakan berbagai add-ons.

Laravel, di sisi lain, terintegrasi dengan library dan platform pihak ketiga,
seperti Amazon Web Services (AWS), sehingga Anda dapat membuat
aplikasi yang mudah diskalakan. Untuk task yang membutuhkan waktu
penyelesaian yang lama (biasanya lebih dari 30 detik), Anda bisa
mengurutkannya agar dapat dijalankan secara asynchronously di
background. Performa pun dapat ditingkatkan dengan lebih baik.

Pemrograman Web Dan Perangkat Bergerak 9


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

Keunggulan Utama:
Memiliki syntax yang mudah dipahami dan dipelajari.
Fungsionalitas intinya dapat dikembangkan dengan menggunakan
add-ons.
Menyediakan fungsi bawaan untuk mengelola routing, manajemen
user, caching, dan lain sebagainya.
Terintegrasi dengan library dan platform pihak ketiga, seperti AWS.
Menjalankan task secara asynchronously di background untuk
meningkatkan performa.

Laravel memiliki komunitas yang sangat aktif. Adanya komunitas ini


membantu setiap usernya dalam mencari bantuan atau bahkan tutorial.
Karena kemudahannya, Laravel merupakan pilihan terbaik bagi yang masih
baru di dunia pengembangan web dan PHP framework.

2. CodeIgniter (https://www.codeigniter.com/)

Gambar 3 Home codeigniter

CodeIgniter merupakan framework PHP yang menggunakan arsitektur


Model View Controller (MVC). Dalam kalimat yang lebih sederhana,
CodeIgniter menggunakan komponen yang berbeda-beda untuk mengelola
task development yang spesifik. Metode yang ditawarkan CodeIgniter lebih
disukai oleh para developer karena mereka bisa membuat serta
mengembangkan aplikasi web yang mudah diskalakan tanpa menyita
banyak ruang.

Kemudahan dalam pembelajaran dan penggunaan membuat CodeIgniter


menjadi salah satu framework PHP terbaik bagi pemula. Kelebihan lainnya
Pemrograman Web Dan Perangkat Bergerak 10
Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

adalah informasi bantuan atau tutorial yang lengkap. Anda dapat memahami
hal-hal dasar terkait penggunaan CodeIgniter dengan lebih mudah. Performa
CodeIgniter pun dapat diandalkan, terlebih jika Anda ingin membuat aplikasi
server sederhana.

Keunggulan Utama:
Framework ringan dengan performa yang dapat diandalkan.
Mudah dipahami dan digunakan berkat adanya informasi bantuan dan
tutorial.
Membuat aplikasi yang mudah diskalakan dengan menggunakan
arsitektur framework berbasis MVC.
Di samping kelebihan, juga ada kekurangan. Sebagai contoh, tidak ada
jadwal yang tetap dan teratur mengenai update CodeIgniter. Jadi, PHP
framework ini tidak di sarankan untuk digunakan bilamana aplikasi yang di
kembangkan memiliki standar keamanan tinggi.

3. Symfony (https://symfony.com/)

Gambar 4 Home symfony

Seandainya ada kompetisi mana framework PHP yang paling baik, maka
Symfony berada di urutan ketiga setelah Laravel dan Codeigniter dari segi
popularitas. Apa, sih, alasannya? Anda akan tahu setelah mencobanya.

Selain memiliki nama yang unik, Symfony juga sangat fleksibel. Di dalamnya
terdapat sistem bundle dan sistem komponen yang memudahkan Anda
dalam memilih fungsi PHP sesuai dengan keinginan, atau menggunakan
keseluruhan framework. Pun framework ini menawarkan fungsionalitas
Pemrograman Web Dan Perangkat Bergerak 11
Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

testing bawaan untuk mengecek apakah aplikasi yang dikembangkan


berjalan normal atau terdapat error.

Ada kelebihan, juga ada kekurangan. Sepengetahuan saya, aplikasi yang


dikembangkan dengan Symfony, sayangnya, tidak punya performa yang
baik. Selain itu, PHP framework ini juga sulit dipahami apabila disandingkan
dengan software lainnya.

Keunggulan Utama:
Framework yang sangat fleksibel sehingga Anda dapat mengaktifkan
masing-masing komponen.
Menyediakan fungsionalitas testing bawaan.
Memiliki informasi bantuan dan tutorial yang dapat diandalkan.

Soal modularitas, Symfony adalah opsi terkuat dalam dunia framework. Alih-
alih library secara keseluruhan, Anda bisa menggunakan suatu komponen
yang diinginkan. Karena itulah, Symfony dinobatkan sebagai framework PHP
terbaik bagi para user yang hanya membutuhkan sedikit bantuan.

4. Zend (https://framework.zend.com/)

Gambar 5 Home Zend

Banyak orang yang menyebut Zend sebagai framework karena


sifatnya yang berbasis komponen. Zend merupakan framework yang
Pemrograman Web Dan Perangkat Bergerak 12
Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

berorientasi pada objek dan berbasis MVC sehingga Anda dapat me-load
komponen yang diinginkan sebagai library individual. Dengan kata lain, Zend
memudahkan Anda untuk fokus hanya pada komponen atau fungsi yang
dibutuhkan dan tidak perlu menyertakan yang lain.

Berkat metode yang membuat penggunanya mengutamakan komponen


yang diperlukan serta sifat framework yang berorientasi pada objek, Anda
dapat menggunakan kembali berbagai kode yang telah ditulis sebelumnya.
Keunikan ini merupakan kabar baik bagi para developer. Selain itu, platform
ini dapat diintegrasikan dengan library eksternal guna mengembangkan
fungsionalitasnya.

Keunggulan Utama:
PHP framework yang berorientasi pada objek serta berarsitektur MVC.
Berkat desain platformnya, kode yang telah ditulis dapat digunakan
kembali.
Kemudahan dalam mengintegrasikan Zend dengan library eksternal.
Tidak perlu memasukkan banyak komponen. Cukup tambahkan
komponen yang diperlukan saja.

Tentu saja Zend juga punya kekurangan. Misalnya, platform ini tidak mudah
untuk dipahami. Katakanlah platform yang digunakan sebelumnya adalah
Laravel, kemudian Anda ingin pindah ke Zend. Tentu proses pemahaman
dan penggunaan tool ini bisa dibilang cukup menantang. Anda akan
merasakan perbedaannya karena Laravel merupakan framework yang
menawarkan kemudahan, bahkan bagi developer pemula. Meski demikian,
Zend tetap menjadi framework PHP terbaik bagi mereka yang sudah
berpengalaman dan kerap melakukan coding yang berorientasi pada objek.

Pemrograman Web Dan Perangkat Bergerak 13


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

5. Phalcon (https://phalconphp.com/en/)

Gambar 6 Home Phalcon

Di antara sekian banyaknya PHP framework, Phalcon memiliki sifat yang


berbeda. Source code-nya ditulis dalam C sehingga pada dasarnya Phalcon
merupakan ekstensi C dari PHP. Kedengarannya memang cukup aneh, tapi
dalam praktiknya, Phalcon menjadi salah satu framework PHP tercepat yang
pernah ada.

Sesuai dengan namanya, Phalcon memiliki performa yang baik sehingga


dapat memberi hasil yang stabil dan berkualitas. Bahkan software ini juga
telah dilengkapi dengan resource yang ringan serta menggunakan arsitektur
MVC. Uniknya setelah diinstall, di dalam framework Phalcon hampir sama
sekali tidak ada file. Cukup tambahkan module dan library yang dibutuhkan.
Dengan begini, proses pengembangan aplikasi web tidak akan berantakan.
Keunggulan Utama:
Framework PHP yang berbasis pada C.
Menawarkan performa yang mulus dan resource yang ringan.
Menggunakan module dan library yang dibutuhkan.

Kekurangan dalam Phalcon adalah Informasi tutorial dan bantuan yang


dimiliki Phalcon tidaklah sebanyak yang ada pada Laravel. Bahkan untuk
mencari tahu bugs dan memperbaikinya memerlukan waktu yang lama.

Terlepas dari segala kelebihan dan kekurangannya, Phalcon adalah


framework PHP terbaik bagi mereka yang mengutamakan performa.

Pemrograman Web Dan Perangkat Bergerak 14


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

6. CakePHP (https://cakephp.org/)

Gambar 7 Home CakePHP

Di awal tahun 2000-an, CakePHP adalah PHP framework MVC pertama


yang sukses diluncurkan di pasaran di mana pada saat itu merupakan
inovasi baru dan sampai saat ini masih menjadi salah satu framework PHP
terbaik dan terpopuler.

Setiap versi terbaru CakePHP yang telah diupdate memiliki performa yang
terus-menerus ditingkatkan serta sejumlah komponen baru. Akan tetapi,
kelebihan utamanya justru terletak pada metode konvensi dalam coding. Hal
ini berarti ketika Anda sudah mengerti serta memahami sekumpulan
konvensinya dengan benar, maka Anda dapat fokus ke pengembangan dan
menyelesaikan task lebih cepat.

CakePHP menawarkan sejumlah library yang menyertakan berbagai


komponen berguna (sebagaimana yang harus dimiliki oleh setiap PHP
framework). Sepanjang dilakukannya uji coba terhadap bermacam-macam
framework, bisa diambil kesimpulan bahwa CakePHP menawarkan salah
satu paket komponen terlengkap. Jadi, jika Anda ingin mengembangkan
aplikasi atau web yang kaya akan fitur, maka CakePHP wajib masuk dalam
list.

Pemrograman Web Dan Perangkat Bergerak 15


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

Keunggulan Utama:
Memiliki beragam paket komponen.
Konvensi CakePHP untuk memprogramkan proyek agar dapat
terlesaikan dengan cepat.

Di satu sisi, karena konvensi yang dimilikinya, CakePHP bisa lebih terbatas.
Kalau Anda suka memprogramkan sesuatu dengan coding dan ingin lebih
kreatif, maka CakePHP bukan framework PHP yang paling ideal. Namun
tetap saja, kita tidak bisa memungkiri kalau software ini masih menjadi
pilihan developer.

7. Yii (https://www.yiiframework.com/)

Gambar 8 Home Yii

Selanjutnya dalam daftar framework PHP terbaik ada Yii, yang juga menjadi
kompetitor yang patut diperhitungkan. Untuk saat ini, bisa dibilang yang
menjadi keunggulan utamanya adalah kemudahan setup-nya. Bahkan dari
segi performa, Yii dapat disandingkan dengan Phalcon dan hal ini menjadi
selling pointnya.

Sama seperti PHP framework lainnya yang sudah kami bahas, Yii
menawarkan paket komponen penting agar pengembangan aplikasi web
menjadi lebih cepat. Namun yang menjadi kelebihannya adalah sekumpulan
fitur kemanan yang canggih. Dengan Yii, Anda bisa membuat proyek aplikasi
web dengan standar keamanan yang tinggi.

Pemrograman Web Dan Perangkat Bergerak 16


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

Keunggulan Utama:
Kecepatan dan performa yang dapat diandalkan.
Anda bisa menggunakan default setup atau mengkustomisasinya
sesuai kebutuhan.
Menerapkan standar keamanan yang tinggi pada website dan aplikasi.

Kekurangan Yii terletak pada tidak mudahnya dipahami dan dipelajari oleh
para developer pemula atau yang menggunakan framework ini untuk
pertama kalinya. Meskipun dikategorikan sebagai framework PHP terbaik, Yii
bukanlah pilihan yang tepat bagi Anda yang baru saja mulai mempelajari
bahasa pemrograman.

8. FuelPHP (https://fuelphp.com/)

Gambar 9 Home FuelPHP

FuelPHP masih relatif baru di dunia PHP framework dan pertama kali
diperkenalkan ke publik pada tahun 2014. Pengembangnya menyatakan
bahwa FuelPHP merupakan hasil riset yang mereka lakukan terhadap
beberapa framework powerful. Beberapa aspek teruniknya dijelaskan di
bagian fitur.

Keunggulan Utama:
Mendukung HMVC.
Standar keamanan yang tinggi.
Baris perintah utilitas yang unik.

Pemrograman Web Dan Perangkat Bergerak 17


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

Framework ini mendukung PHP versi 5.4 dan di atasnya. Selain itu, FuelPHP
juga memiliki informasi bantuan dan tutorial yang memudahkan proses
pengembangan aplikasi web berjalan lancar dan cepat.

C. Prosedur penggunaan MVC untuk aplikasi berbasis web


Pembuatan Aplikasi web sederhana menggunakan konsep MVC dengan PHP
1. Pendahuluan https://youtu.be/tBKOb8Ib5nI
2. Persiapan https://youtu.be/t3A4ZtOONRs
3. Routing https://youtu.be/-wBKfa0-yyQ
4. Controller https://youtu.be/q41f0fc10Ns
5. View https://youtu.be/LRa-xO4qIAc
6. Assets https://youtu.be/FTNqmRPPA-I
7. Model https://youtu.be/fgk1Mv3wes4
8. Database Wrapper https://youtu.be/44D7B71_WtY
9. Insert Data https://youtu.be/a0hUeS800OE
10. Flash Message https://youtu.be/Dz3RHCit4qE
11. Delete Data https://youtu.be/ni5IZWRiY4A
12. Update Data (+ ajax) https://youtu.be/waJX57xRU0M
13. Searching https://youtu.be/ol53wH5AKaQ

Ikuti langkah-langkah dalam video diatas kemudian kembangkan sesuai Tugas


Praktik pada bagian evaluasi.

D. RANGKUMAN

MVC adalah konsep arsitektur dalam pembangunan aplikasi berbasis web yang
membagi aplikasi web menjadi 3 bagian besar. Yang mana setiap bagian
memiliki tugas-tugas serta tanggung jawab masing-masing. Tiga bagian tersebut
adalah: model, view dan controller.

Di dalam dunia pengembangan software merujuk pada


tempat penyimpanan file yang memuat beberapa fungsi dasar. Tujuannya untuk
menyediakan fondasi bagi para developer agar bisa mengembangkan proyek
dengan lebih efisien.

Pemrograman Web Dan Perangkat Bergerak 18


Dian Purwanto, S.Pd
Pemrograman Web Dan Perangkat Bergerak
Copyright @ 2019 maliki.id

E. EVALUASI
TUGAS Praktik (Mandiri)
1. Buatlah Rancangan sebuah program aplikasi berbasis web ( digital
Curriculum Vitae / Resume / Personal Website) menggunakan konsep
MVC.
2. Rancangan diilustrasikan menggunakan flowchart.
3. Buatlah Aplikasi sesuai rancangan yang anda buat sebelumnya.
4. Aplikasi Bersifat dinamis dan dilengkapi halaman admin (FrontEnd dan
BackEnd)
5. Untuk FrontEnd silahkan gunakan salah satu dari template berikut:
https://freshdesignweb.com/personal-website-templates/
https://colorlib.com/wp/html5-resume-templates/
https://freehtml5.co/category/personal/
6. Untuk BackEnd silahkan gunakan salah satu dari template berikut:
https://www.creative-tim.com/bootstrap-themes/admin-dashboard
https://startbootstrap.com/themes/
https://adminlte.io/
7. Durasi tugas 10 X 24 jam
8. Tugas dikumpulkan (file project, flowchart dan database) melalui email
dengan format: Tugas1_nama_kelas.zip
contoh: Tugas1_Dian Purwanto_XII RPL 1.zip

Timeline Pengerjaan Tugas

Job H1 H2 H3 H4 H5 H6 H7 H8 H9 H10
Perancangan Sistem (flowchart)
Perancangan database
FrontEnd
BackEnd
Testing
Pengumpulan Tugas

TUGAS Kognitif (kerjakan di buku tulis/catatan)


1. Jelaskan konsep MVC pada pemrograman web menggunakan PHP!
2. Sebutkan 8 framework PHP yang menggunakan konsep MVC dilengkapi
denga kelebihan masing-masing!
3. Jelaskan alur kerja aplikasi web yang menggunakan konsep MVC!

Pemrograman Web Dan Perangkat Bergerak 19


Dian Purwanto, S.Pd

Anda mungkin juga menyukai