F5 · Modul 01
Proyek rapi dan dependensi terkunci
33 langkah singkat, dari mudah sampai tantangan.
Level 1
Kenal
Level 2
Paham
Level 3
Terapkan
Level 4
Tantangan
Level 5
Pendalaman
Intinya
- Notebook menyimpan keadaan tersembunyi; aplikasi butuh fungsi murni: masukan lewat parameter, hasil lewat
return. - Tata letak
src/warung/+pyproject.tomlmembuat kode bisa di-import oleh tes, aplikasi web, dan API tanpa triksys.path. pyproject.tomlmencatat dependensi langsung dengan batas longgar; lock file mencatat semua paket dengan versi persis dan hash.- Pasang dari lock dengan
--require-hashes: laptopmu, CI, dan container mendapat byte yang sama. - Pemeriksa kecil dengan pustaka standar bisa menolak lock yang bocor sebelum masuk CI.
Sebelum mulai
±3 jam (termasuk lab di komputermu).
Modul ini memakai materi di bawah. Belum yakin? Ulas dulu bagian yang disebut.
Hasil belajar: setelah modul ini kamu bisa mengubah sel notebook menjadi fungsi murni yang bisa diuji; menata proyek dengan folder src/ dan pyproject.toml; membedakan dependensi langsung dan tidak langsung; membaca penentu versi (==, >=, ~=); membuat lock file dengan versi persis dan hash; serta menulis pemeriksa lock dengan pustaka standar.
Proyek: paket warung dengan omzet_harian, pyproject.toml, dan requirements.txt terkunci (kontrak proyek).
Istilah di modul ini (19)
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.
- 13 contoh kode
- 7 berkas latihan + tes
- 1 berkas data
Lihat isi zip
- BACA-DULU.txt
- contoh_f5_01_26.py
- contoh_f5_01_49.py
- contoh_f5_01_82.py
- contoh_f5_01_258.py
- contoh_f5_01_281.py
- contoh_f5_01_341.py
- contoh_f5_01_361.py
- contoh_f5_01_380.py
- contoh_f5_01_562.py
- contoh_f5_01_581.py
- contoh_f5_01_651.py
- contoh_f5_01_738.py
- contoh_f5_01_768.py
- test_f5_01_3.py
- test_f5_01_1.py
- test_f5_01_4.py
- test_f5_01_2.py
- test_f5_01_5.py
- test_f5_01_6.py
- test_f5_01_7.py
- warung.sql