đŸ’ģ Pemrograman Web 2
📋 Outline Pembelajaran

OUTLINE MODUL PEMROGRAMAN WEBSITE 2

A. STUDI KASUS: Sistem Manajemen Perpustakaan

B. STRUKTUR MODUL SETIAP PERTEMUAN

Setiap modul terdiri dari:
  1. Halaman Sampul (Judul, Pertemuan ke-, Informasi MK)
  2. Informasi Pertemuan (CPL, CPMK, Sub-CPMK, Indikator)
  3. Pendahuluan (Overview & Keterkaitan)
  4. Materi Teori (Konsep & Penjelasan)
  5. Praktikum (Langkah-langkah hands-on)
  6. Latihan/Tugas
  7. Evaluasi/Assessment
  8. 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 sistem

2. 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 dinamis

3. 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 buku

4. 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 functions

5. 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 buku

6. 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 pakai

7. 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 PHP

8. 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 terinstall

10. 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 Laravel

11. 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 buku

12. 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 Laravel

13. 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 lengkap

14. 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 peminjaman

15. 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 penuh

16. 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)