Web Programming
Laravel 5.2.x
08 November 2019
Dewi Suryani, S.Kom., M.Eng.
Rhio Sutoyo, S.Kom., M.Sc.
[email protected] [email protected] Laravel
Laravel merupakan salah satu model-view-controller
(MVC) PHP framework yang kuat dan banyak digunakan
dalam pembuatan aplikasi web
Laravel dibuat oleh Taylor Otwell
Laravel didesain untuk para developer yang membutuhkan
perangkat yang sederhana dan bagus dalam membangun
aplikasi web
Apa itu Laravel?
Framework vs.
Library
Model-View-Controller
Model:
Sebagai representasi dari data / sumber daya
dari aplikasi. Model dapat dianggap sebagai
representasi dari tabel-tabel pada database.
View:
Bertanggung-jawab untuk menangkap request
dari pengguna, memproses permintaan dari
pengguna, dan kemudian mengirim respon dari
request yang dikirimkan.
Controller:
Bertanggung-jawab untuk menampilkan respon
yang dikembalikan dari suatu controller dalam
format yang sesuai, biasanya dalam bentuk
halaman web HTML.
Keuntungan Arsitektur
MVC
• Simultaneous Development
Banyak pengembang yang bisa bekerja secara bersama-sama di tiap-tiap
bagian.
• High Cohesion
Tiap bagian dari aplikasi yang menggunakan arsitektur MVC memiliki tugas
yang spesifik.
• Low Coupling
Tiap-tiap bagian (model, view, controller) bersifat independen dari bagian lain.
• Ease of Modification
Bagian View tidak akan terpengaruh apabila terjadi bug di bagian Model.
• High Code Reusability
Kode yang sudah ada bisa dengan mudah digunakan kembali.
Struktur Folder
folder paling awal dari instalasi proyek Laravel, berisi semua perintah artisan yang
semua folder yang mendukung pengembangan aplikasi. digunakan selama pengembangan.
folder berisi semua file yang events yang bisa diberi listener yang
mengandung source code ada di folder Listeners.
dari aplikasi termasuk logika
dan sumber daya. semua exception handler dari aplikasi
Controllers: class PHP untuk class PHP untuk mengatur sistem
mengatur logika dari aplikasi antrian proses dari aplikasi.
Middleware: class PHP untuk class yang mengatur event dimana listener
menyaring setiap request akan menerima suatu event dan
menampilkan respon yang diinginkan.
yang masuk ke aplikasi
Request: class PHP untuk class yang mengatur logika otorisasi
mengatur request dan file pada aplikasi.
routes.php. service provider yang diregistrasikan
di config/app.php
file-file model untuk pengembangan
Struktur Folder
cache yang berisi file-file untuk
optimisasi kerangka aplikasi.
semua file konfigurasi yang
berbagai parameter yang digunakan aplikasi.
digunakan untuk database.
file-file yang digunakan untuk
controller untuk front end aplikasi dan memperkaya aplikasi web yang dibuat.
aset-asetnya. Contohnya aset gambar, aset suara,
bahasa, dan lain sebagainya.
cache, data file, dan file log dari aplikasi.
file-file untuk menyimpan test case
dalam tahapan testing aplikasi.
semua dependency yang dibuat oleh composer
Laravel Requirements
• Bahasa Pemrograman: PHP
https://www.apachefriends.org/xampp-files/7.3.11/xampp-win
dows-x64-7.3.11-0-VC15-installer.exe
• Package Manager: Composer
Link: https://getcomposer.org/Composer-Setup.exe
Versi
• PHP >= 7.3.10
• Laravel >= 5.2.45
Editors
Editor alternatives:
1. Visual Studio Code:
https://aka.ms/win32-x64-user-stable
2. Sublime
https://download.sublimetext.com/Sublime%20Text%20Build%
203211%20x64%20Setup.exe
Buat Proyek Laravel
Mulai Servis Laravel
Copy URL berikut
Paste URL di
browser untuk
membuka proyek
Artisan adalah comand-line interface yang menyediakan sejumlah perintah yang dapat digunakan selama
pengembangan proyek.
Artisan List (example)
Konfigurasi Environment
Konfigurasi untuk database yang
akan digunakan pada aplikasi.
Nama database ini disesuaikan
dengan nama database MySQL
yang akan digunakan.
Routing
• Routing adalah cara Laravel membaca URL yang di-request oleh pengguna dan
menentukan apa yang harus dilakukan sebagai respon sesuai dengan rute yang
sudah dibuat oleh pengembang dan HTTP method-nya.
Ini merupakan route
default saat proyek Laravel
dibuat.
Path file:
/app/Http/routes.php
Di file ini Anda bisa
menambahkan route
lainnya yang diinginkan.
Routing (contoh)
Contoh route simple yang ketika
dipanggil akan menampilkan teks
‘Hello World’
Routing (with parameter)
Contoh route simple yang dilengkapi
dengan parameter, sehingga ketika
dipanggil akan menampilkan teks
dan isi dari parameter yang dikirim.
Routing (with parameters)
Contoh route simple yang
dilengkapi dengan parameter
lebih dari 1, sehingga ketika
dipanggil akan menampilkan
teks dan isi dari parameter
yang dikirimkan.
Routing (alias)
Contoh route yang
menggunakan alias dan saat
digunakan akan langsung
redirect ke route seharusnya.
Blade Templates
• Blade adalah templating engine yang disediakan oleh Laravel.
• Blade bekerja dengan mengkompilasikan semua kode dengan template blade menjadi kode php normal
dan disimpan pada cache sampai terdapat perubahan.
tanpa blade:
dengan blade:
Blade Example
TERIMA KASIH