Setelah menyelesaikan praktikum ini, mahasiswa diharapkan mampu:
- Memberikan pemahaman dan keterampilan dasar kepada mahasiswa dalam membangun aplikasi web modern berbasis framework PHP dengan menerapkan konsep MVC (Model View Controller).
- Memahami struktur dan alur kerja Laravel sebagai salah satu framework yang banyak digunakan dalam pengembangan aplikasi web.
- Melatih kemampuan mahasiswa dalam mengelola database menggunakan migration dan seeding.
- Membuat serta mengatur routing aplikasi, membangun model untuk interaksi data, serta membuat tampilan antarmuka menggunakan Blade Template Engine.
- Mengembangkan controller sebagai penghubung antara model, view, and request user.
- Mengimplementasikan seluruh materi dalam bentuk aplikasi CRUD (Create, Read, Update, Delete) sederhana.
Konfigurasi Database (.env): File environment global (.env) menyimpan kredensial database lokal. Hal ini memisahkan konfigurasi sensitif dari kode program inti aplikasi.
Migration: Fitur yang bertindak sebagai version control bagi skema database. Pengembang dapat mendesain struktur tabel secara konsisten menggunakan kode program PHP tanpa menyentuh DBMS manual.
Seeding: Proses pengisian data awal atau rekaman dummy ke dalam tabel pangkalan data secara otomatis untuk mempermudah proses pengujian fungsionalitas sistem.
Model (Eloquent ORM): Menyediakan abstraksi berorientasi objek yang memetakan setiap tabel database menjadi satu representasi kelas kode program, menyederhanakan kueri SQL melalui Active Record.
Controller: Berfungsi mengelola alur logika aplikasi, menerima masukan data dari request pengguna, memprosesnya melalui Model, lalu mengembalikannya menuju komponen View.
View (Blade Layout): Mesin pemrosesan template visual bawaan Laravel untuk memproduksi tampilan antarmuka pengguna secara dinamis dan mendukung reusabilitas komponen UI.
- Laptop / Komputer dengan sistem operasi Windows
- Laragon Full / XAMPP (Local Development Environment)
- Visual Studio Code (Code Editor)
- Web Browser (Google Chrome / Mozilla Firefox)
- Composer (Dependency Manager PHP) & Git Version Control
- Node.js & NPM Package Manager
Berikut adalah runtutan langkah praktikum mandiri untuk mengonfigurasi dan menguji integrasi awal pangkalan data produk menggunakan Laravel.
Langkah awal adalah memastikan posisi direktori pengerjaan terminal aktif berada tepat di dalam root folder project Laravel Anda.
Pastikan posisi terminal aktif berada di direktori project berikut:
C:\laragon\www\laravel
Menjalankan server bawaan Laravel agar aplikasi dapat diakses lokal melalui peramban web browser.
php artisan serve
Membuat file cetak biru skema migrasi baru untuk mendefinisikan tabel produk ke database.
Membuka berkas skema di VS Code untuk mengonfigurasi kolom-kolom atribut spesifik tabel produk.
Mengirim rancangan tabel PHP ke server basis data MySQL agar tabel terbentuk secara nyata.
Membuat file generator seeder untuk memasukkan data uji coba awal ke dalam tabel produk.
Mengonfigurasi isi baris data produk dummy di dalam berkas ProductSeeder yang baru saja terbuat.
Menghubungkan ProductSeeder agar dapat dieksekusi oleh master seeder bawaan Laravel.
Menjalankan perintah pengisian data dummy tersebut ke dalam database melalui perintah Artisan.
Membuat file model sebagai perwakilan objek pemetaan data tabel produk di kode program aplikasi Anda.
Mengonfigurasi properti whitelist fillable pada model agar kolom tabel aman diisi data secara massal.
Membuat file controller yang nantinya akan mengontrol alur logika penampilan data produk.
Menulis kueri Eloquent All() untuk mengambil seluruh data dari model produk dan mengirimkannya ke view.
Mendaftarkan alamat URL khusus di file route aplikasi agar link `/products` bisa diakses.
Membuat file antarmuka HTML menggunakan template engine Blade untuk menampilkan perulangan data produk.
Langkah pengujian akhir untuk memastikan bahwa semua komponen terhubung dengan baik tanpa ada kesalahan.
Bagian terpisah ini mendokumentasikan langkah pengerjaan tugas mandiri pembuatan sistem manajemen pengolahan data mahasiswa secara lengkap (Create, Read, Update, Delete).
Membuat file skema migrasi baru di terminal Laragon khusus untuk mencetak struktur tabel mahasiswa.
Membuka file migrasi mahasiswa di VS Code, kemudian menambahkan kolom nama, nim (unik), jurusan, dan email.
Menjalankan migrasi untuk membuat tabel mahasiswa secara nyata ke dalam pangkalan data MySQL.
Membuat file seeder khusus mahasiswa untuk mempermudah penyediaan data dummy pengujian.
Membuka file `MahasiswaSeeder.php` and memasukkan data sampel seperti 'Budi Santoso' dan 'Siti Aminah'.
Menambahkan instruksi pendaftaran panggil seeder mahasiswa ke dalam file master seeder utama.
Mengisi baris data dummy mahasiswa secara instan ke pangkalan data menggunakan terminal.
Membuat file model berorientasi objek khusus untuk memetakan tabel data mahasiswa.
Mengatur kolom yang boleh diisi pada model mahasiswa demi alasan keamanan sistem masukan data.
Membuat controller dengan flag `--resource` agar otomatis terisi fungsi dasar CRUD (Index, Create, Store, Edit, Update, Destroy).
Mengisi setiap method di MahasiswaController untuk menangani validasi masukan data dan proses penyimpanan database.
Mendaftarkan rute resource tunggal di `web.php` untuk menangani ketujuh jalur URL CRUD mahasiswa secara otomatis.
Membuat struktur subfolder baru khusus bernama `mahasiswa` di dalam direktori views agar file rapi.
Membuat halaman tabel untuk menampilkan daftar data mahasiswa yang dilengkapi dengan tombol aksi Edit dan Hapus.
Membuat halaman form tambah data mahasiswa baru yang dilengkapi dengan pesan error jika isian form tidak valid.
Membuat halaman form edit yang otomatis menampilkan data lama pengguna yang akan di-update menggunakan spoofing method `@method('PUT')`.
Langkah akhir untuk memastikan seluruh fungsionalitas manajemen aplikasi pengolahan data mahasiswa berjalan lancar.
Melalui serangkaian tahapan praktikum Pertemuan 7 ini, integrasi penuh arsitektur MVC (Model-View-Controller) pada framework Laravel berhasil dijalankan dengan baik:
- Konfigurasi Environment Database: Berhasil menghubungkan aplikasi dengan MySQL lokal melalui pengaturan file `.env`.
- Migration & Seeding: Skema tabel `products` dan `mahasiswas` berhasil diproduksi otomatis oleh Artisan. Pengisian data dummy lewat seeder juga berhasil masuk ke dalam record database.
- Fungsionalitas CRUD: Pengujian endpoint `/mahasiswa` di browser membuktikan bahwa kelima operasi manipulasi pangkalan data (Index, Create, Store, Edit, Update, Destroy) berjalan lancar dengan sistem validasi form yang aman.
Berdasarkan seluruh tahapan praktikum yang telah dilaksanakan, diperoleh beberapa poin kesimpulan penting:
- Pola arsitektur Model-View-Controller (MVC) terbukti mempermudah pengembangan aplikasi dengan memisahkan bagian database (Model), tampilan visual (View), and pemroses logika utama (Controller).
- Fitur Migration dan Seeder mempermudah pengelolaan skema database secara konsisten tanpa perlu ekspor/impor SQL manual lewat phpMyAdmin.
- Penggunaan Eloquent ORM menyederhanakan penulisan query database yang rumit menjadi perintah berorientasi objek yang lebih singkat dan aman dari serangan SQL Injection.
- Pemanfaatan Resource Controller & Route menghemat penulisan jalur kode routing secara signifikan melalui standarisasi restful API endpoint bawaan Laravel.