OUTLINE MODUL PEMROGRAMAN WEBSITE 2
A. STUDI KASUS: Sistem Manajemen Perpustakaan
B. STRUKTUR MODUL SETIAP PERTEMUAN
Setiap modul terdiri dari:- Halaman Sampul (Judul, Pertemuan ke-, Informasi MK)
- Informasi Pertemuan (CPL, CPMK, Sub-CPMK, Indikator)
- Pendahuluan (Overview & Keterkaitan)
- Materi Teori (Konsep & Penjelasan)
- Praktikum (Langkah-langkah hands-on)
- Latihan/Tugas
- Evaluasi/Assessment
- Referensi
C. OUTLINE 16 PERTEMUAN
1. PERTEMUAN 1: Pengantar Backend Web & Kontrak Kuliah
Teori:- Kontrak perkuliahan & sistem penilaian OBE
- Perbedaan frontend vs backend
- Konsep request-response HTTP
- Arsitektur web 3-tier
- Peran PHP, MySQL, Laravel dalam backend
- Overview studi kasus: Sistem Perpustakaan
Praktikum:- Instalasi XAMPP/Laragon
- Konfigurasi environment PHP
- Testing environment (phpinfo)
- Membuat file PHP pertama
- Analisis use case diagram perpustakaan
Output: Environment siap + pemahaman alur sistem2. PERTEMUAN 2: Dasar PHP & Pemrograman Server-Side
Teori- PHP sebagai server-side language
- Sintaks dasar PHP
- Variabel & tipe data
- Echo, print, var_dump
- Operator dasar
- Komentar & best practice
Praktikum:- Membuat halaman info buku sederhana
- Menampilkan data buku dengan variabel
- Manipulasi string untuk judul buku
- Perhitungan sederhana (harga, diskon)
- Debug dengan var_dump
Output: Halaman info buku dinamis3. PERTEMUAN 3: Kontrol Alur Program PHP
Teori:- Percabangan (if, else, elseif, switch)
- Perulangan (for, while, foreach)
- Logical operators
- Nested conditions
Praktikum:- Logika ketersediaan buku (stok > 0)
- Status buku (tersedia/dipinjam)
- Kategori buku dengan switch
- Loop menampilkan multiple buku
- Validasi input sederhana
Output: Sistem cek ketersediaan buku4. PERTEMUAN 4: Array & Function PHP
Teori:- Array indexed
- Array associative
- Multidimensional array
- Function: parameter, return value
- Scope variabel
- Include & require
Praktikum:- Array data buku perpustakaan
- Function untuk menampilkan buku
- Function cari buku by ID
- Function hitung total buku
- Modularisasi code dengan include
Output: Library management functions5. PERTEMUAN 5: Form Handling dengan PHP
Teori:- Form HTML basics
- Method GET vs POST
- Superglobal variables ($_GET, $_POST)
- Validasi input
- Sanitasi data
- Form security basics
Praktikum:- Form input data buku baru
- Form pencarian buku
- Validasi form buku (required fields)
- Menampilkan hasil pencarian
- Error handling form
Output: Form input & search buku6. PERTEMUAN 6: Database MySQL untuk Web
Teori:- Konsep RDBMS
- Perancangan database perpustakaan
- ERD sederhana
- SQL: DDL (CREATE, ALTER, DROP)
- SQL: DML (INSERT, SELECT, UPDATE, DELETE)
- Primary Key & Auto Increment
Praktikum:- Membuat database perpustakaan
- Membuat tabel: buku
- Membuat tabel: anggota
- Insert sample data
- Query SELECT berbagai kondisi
- Update & Delete data
Output: Database perpustakaan siap pakai7. PERTEMUAN 7: PHP-MySQL Integration (CRUD Native)
Teori:- PHP mysqli extension
- Koneksi database
- Prepared statements
- Error handling database
- Struktur folder project
Praktikum:- Setup koneksi database
- CREATE: Insert buku baru
- READ: Tampilkan list buku
- UPDATE: Edit data buku
- DELETE: Hapus buku
- Mini project: CRUD Buku lengkap
Output: Aplikasi CRUD Buku native PHP8. PERTEMUAN 8: UTS - Evaluasi Tengah Semester
Cakupan Ujian:
- Teori: Konsep backend, PHP, database
- Praktik: Membuat CRUD sederhana
- Soal case study perpustakaan
Format:
- Ujian praktik (100%): Coding langsung
9. PERTEMUAN 9: Pengenalan Framework Laravel & MVC
Teori:-
Limitasi PHP native
-
Konsep framework
-
Arsitektur MVC
-
Pengenalan Laravel
-
Struktur folder Laravel
-
Composer & dependency management
Praktikum:- Instalasi Composer
- Instalasi Laravel via Composer
- Membuat project Laravel pertama
- Eksplorasi struktur folder
- Routing sederhana
- Menjalankan Laravel server
Output:* Laravel project terinstall10. PERTEMUAN 10: Database dengan Migration & Model
Teori:- Database migration concept
- Laravel Eloquent ORM
- Model-Database relationship
- Schema builder
- Seeding data
Praktikum:- Konfigurasi database Laravel
- Migration tabel buku
- Migration tabel anggota
- Membuat Model Buku
- Membuat Model Anggota
- Database seeding
Output: Database structure via Laravel11. PERTEMUAN 11: Controller & View (MVC Pattern)**
Teori:- Controller responsibility
- Routing advanced
- Blade templating engine
- Passing data to view
- Layout & components
Praktikum:- Membuat BukuController
- Route untuk buku
- Blade layout master
- Menampilkan list buku
- Menampilkan detail buku
- Blade directives (@foreach, @if)
Output: Halaman list & detail buku12. PERTEMUAN 12: CRUD Buku dengan Laravel
Teori:- Resourceful controller
- Form validation Laravel
- CSRF protection
- Flash messages
- Eloquent CRUD methods
Praktikum:- Create: Form & store buku
- Read: Index & show buku
- Update: Edit & update buku
- Delete: Destroy buku
- Validation rules
- Error handling
Output: CRUD Buku lengkap Laravel13. PERTEMUAN 13: CRUD Anggota dengan Laravel
Teori:- Replikasi pola CRUD
- DRY principle
- Code organization
- Validasi form advanced
Praktikum:- AnggotaController
- Migration & Model Anggota
- CRUD Anggota (mirror Buku)
- Custom validation
- Relasi preparation
Output: CRUD Anggota lengkap14. PERTEMUAN 14: Authentication & Transaksi Peminjaman
Teori:- Laravel authentication
- Middleware concept
- Session management
- Database relationship (hasMany, belongsTo)
- Transaction logic
Praktikum:- Setup Laravel Breeze/UI
- Login & register system
- Middleware auth
- Tabel transaksi (migration)
- Model Transaksi dengan relasi
- Form peminjaman buku
- Logika update stok
Output: Login system + transaksi peminjaman15. PERTEMUAN 15: Integrasi Sistem & Finalisasi
Teori:- System integration
- Data relationship
- UI/UX improvement
- Testing & debugging
- Deployment preparation
Praktikum:- Dashboard admin
- Halaman pengembalian buku
- List transaksi per anggota
- Search & filter data
- Validasi bisnis logic
- UI enhancement
- Bug fixing
Output: Sistem perpustakaan terintegrasi penuh16. PERTEMUAN 16: UAS - Presentasi & Evaluasi Akhir
Format UAS:- Presentasi project (40%)
- Demo aplikasi (40%)
- Tanya jawab (20%)
Kriteria Penilaian:- Kelengkapan fitur
- Code quality
- Penerapan MVC
- Authentication
- Transaksi
- Presentasi
D. TOOLS & ENVIRONMENT
1. Software Required:
- XAMPP/Laragon
- Text Editor (VS Code recommended)
- Web Browser
- Composer
- Git (optional)
2. Tech Stack:
- PHP 8.x
- MySQL 8.x
- Laravel 12.x
- Bootstrap 5 (untuk UI)