F4 · Modul 16
Proyek akhir: Dasbor Laporan Warung
46 langkah singkat, dari mudah sampai tantangan.
Level 1
Kenal
Level 2
Paham
Level 3
Terapkan
Level 4
Tantangan
Level 5
Pendalaman
Intinya
- Dasbor tersusun berlapis: data dan validasi → perhitungan murni → API dan halaman server → klien bertipe → komponen. Inti murni, validasi di batas, satu sumber kebenaran.
- Tanggal kalender ditangani sebagai teks
YYYY-MM-DD;toISOStringdangetDatemenggeser transaksi pagi WIB ke hari lain. - Kegagalan yang diharapkan adalah nilai, bukan
throw:Promise.allSettleduntuk kegagalan sebagian,HasilMuatuntuk berkas rusak. - Tes berlapis membuktikan angka rujukan kontrak. Deploy ke Cloudflare Workers mengubah aturan: tanpa sistem berkas saat jalan, dan middleware harus runtime edge.
- Tinjauan desain tertulis menyimpan alasan, alternatif, dan konsekuensi. AI memangkas kesulitan aksidental; kesulitan esensial tetap milikmu.
Sebelum mulai
±5 jam termasuk lab, ditambah waktu proyekmu sendiri.
Modul ini memakai materi di bawah. Belum yakin? Ulas dulu bagian yang disebut.
- Modul 06 · Desain dengan tipeYang dipakai:
HasilMuat - Modul 09 · AsinkronYang dipakai:
Promise.allSettled - Modul 12 · Data di batas sistemYang dipakai:
SkemaLaporan - Modul 13 · React dasarYang dipakai: komponen
- Modul 14 · Next.js App RouterYang dipakai: aplikasi Next.js
- Modul 15 · API bertipe, keamanan, dan aksesibilitasYang dipakai: klien bertipe, CSP, audit aksesibilitas
- F5 · Modul 07 · Rahasia, konfigurasi, domain, pemantauan sederhana
Hasil belajar: menyatukan semua lapisan course (data, validasi, perhitungan, API, klien bertipe, komponen, halaman) menjadi aplikasi yang utuh; menjelaskan arsitekturnya dan menulis tinjauan desain dengan alternatif dan konsekuensinya; menangani tanggal dan zona waktu dengan benar; mengelola keadaan data asinkron termasuk kegagalan sebagian (Promise.allSettled); menolak berkas rusak di batas sistem tanpa membuat aplikasi jatuh; membuat grafik SVG yang aksesibel; menyusun strategi pengujian berlapis (unit, kontrak, komponen, tipe) dan menjalankannya dengan Vitest; menyiapkan deploy ke Cloudflare Workers dengan OpenNext dan menjelaskan apa yang berubah saat kode pindah dari Node ke edge; serta membaca hasil npm audit dan memutuskan tindakan.
Proyek: Dasbor Laporan Warung utuh: halaman /dasbor dan /periksa, tes Vitest, build untuk Cloudflare Workers, README, dan tinjauan desain (kontrak proyek §5, §6).
Istilah di modul ini (55)
Ketuk istilah untuk melihat penjelasannya. Di materi, istilah bergaris titik membuka kartu yang sama. Semua istilah course
Bahan modul
Semua kode, latihan, dan data modul ini dalam satu zip, untuk dijalankan di laptop atau Google Colab.
- 8 berkas latihan + tes
- 3 berkas data
Lihat isi zip
- BACA-DULU.txt
- latihan_f4_16_1.ts
- latihan_f4_16_6.ts
- latihan_f4_16_5.tsx
- latihan_f4_16_4.ts
- latihan_f4_16_2.ts
- latihan_f4_16_7.tsx
- latihan_f4_16_3.ts
- latihan_f4_16_8.ts
- laporan.json
- laporan-api.json
- laporan-rusak.json