Lewati ke konten utama

F5 · Modul 01

Proyek rapi dan dependensi terkunci

33 langkah singkat, dari mudah sampai tantangan.

  1. Level 1

    Kenal

  2. Level 2

    Paham

  3. Level 3

    Terapkan

  4. Level 4

    Tantangan

  5. Level 5

    Pendalaman

Intinya

  • Notebook menyimpan keadaan tersembunyi; aplikasi butuh fungsi murni: masukan lewat parameter, hasil lewat return.
  • Tata letak src/warung/ + pyproject.toml membuat kode bisa di-import oleh tes, aplikasi web, dan API tanpa trik sys.path.
  • pyproject.toml mencatat 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