Hubungi Kami

Kerangka Materi

Hari 1 – Dasar-dasar Kuat dan Alat Bantu Pengembangan Python

Fitur Modern Python serta Sistem Tipe

  • Pemahaman dasar sistem tipe, penggunaan generik, Protocols, serta TypeGuard
  • Konsep dataclass, jenis dataclass yang tak dapat diubah, serta ringkasan alat attrs
  • Mekanisme pencocokan pola (PEP 634+) dan penerapannya secara idiomatik

Kualitas Kode serta Alat Bantu Pengembangan

  • Alat pengatur format kode serta pemeriksa gaya: black, isort, flake8, ruff
  • Pemeriksaan tipe statis menggunakan MyPy dan pyright
  • Pemanfaatan hook pre-commit serta pengembangan alur kerja efektif

Manajemen Proyek dan Pengemasan Paket

  • Mengelola ketergantungan dengan Poetry serta lingkungan virtual
  • Struktur pengarsipan, titik akses eksekusi, serta praktik penomoran versi yang baik
  • Cara membangun serta mengunggah paket ke PyPI maupun repositori privat lainnya<\/li>

Hari 2 – Pola Desain dan Praktik Arsitektur

Pola Desain dalam Python

  • Pola kreasi: Factory, Builder, Singleton (versi yang sesuai dengan konteks Python)
  • Pola struktural: Adapter, Facade, Decorator, Proxy
  • Pola perilaku: Strategy, Observer, Command

Prinsip-Prinsip Arsitektur<\/p>

  • Penerapan prinsip SOLID dalam pengembangan aplikasi Python
  • Konsep Arsitektur Hexagonal/Clean serta batasan-batasnya
  • Teknik penyuntikan ketergantungan dan manajemen konfigurasi yang efektif

Modularitas serta Penggunaan Ulang Komponen

  • Cara merancang kode aplikasi maupun pustaka secara terpisah
  • Pembentukan antarmuka API yang stabil serta penggunaan penomoran versi semantik
  • Penanganan konfigurasi, data rahasia, dan pengaturan khusus lingkungan

Hari 3 – Konkurensi, Pemrograman Asinkron, serta Optimalisasi Kinerja

Konsep Konkurensi dan Paralelisme

  • Fondasi dasar threading serta pengaruh GIL terhadap kinerja program
  • Pemanfaatan multiprocessing serta kelompok proses untuk tugas yang membutuhkan sumber daya komputasi tinggi
  • Kapan sebaiknya kita menggunakan concurrent.futures dan kapan harus beralih ke multiprocessing

Pemrograman Asinkron dengan asyncio

  • Mekanisme async/await, cara mengendalikan event loop serta pembatalan operasi
  • Cara merancang pustaka asinkron serta integrasinya ke dalam kode sinkron
  • Pola interaksi berbasis I/O, teknik pengaturan batasan laju pemrosesan, serta pencegahan beban berlebih

Analisis Profil dan Optimisasi Kode

  • Peralatan profiling: cProfile, pyinstrument, perf, serta memory_profiler
  • Cara mengoptimalkan bagian kode yang sering digunakan, termasuk penggunaan ekstensi C atau alat Numba secara tepat
  • Pengukuran latensi, volume pemrosesan data, serta pemanfaatan sumber daya sistem

Hari 4 – Pengujian, Proses CI/CD, Pengamatan Sistem, dan Penerapan Aplikasi

Strategi Pengujian serta Otomatisasi

  • Pengembangan tes unit menggunakan pytest beserta alat bantu pembuat konfigurasi uji
  • Teknik pengujian berbasis aturan menggunakan Hypothesis dan kontrak fungsi
  • Metode pembuatan mock, manipulasi kode dinamis (monkeypatching), serta pengujian kode asinkron<\/li>

Proses CI/CD, Rilis Produk, serta Pengamatan Sistem

  • Pengintegrasian skrip tes serta pengecekan kualitas dalam platform GitHub Actions/GitLab CI
  • Cara membangun kontainer yang seragam menggunakan Docker beserta metode pembangunan multi-stage
  • Teknik pengamatan aplikasi: pencatatan log terstruktur, pengukuran dengan Prometheus, serta jejak pemrosesan sistem

Keamanan Sistem, Penguatan Aplikasi, serta Praktik Terbaik

  • Pemeriksaan ketergantungan, penjelasan mengenai SBOM, serta pendeteksian kerentanan secara otomatis
  • Kebijakan pengkodean yang aman dalam validasi input dan pengelolaan data rahasia
  • Peningkatan keamanan lingkungan eksekusi: batasan sumber daya, hak akses pengguna, serta perlindungan kontainer sebagai lingkungan kerja

Proyek Akhir dan Evaluasi Terakhir

  • Aktivitas tim: merancang serta membangun layanan sederhana dengan mengadopsi konsep-konsep pelatihan
  • Pengujian, verifikasi tipe, proses pengemasan, serta pembentukan pipeline CI untuk proyek tersebut
  • Penilaian akhir, evaluasi kode secara objektif, dan penyusunan rencana perbaikan yang spesifik bagi peserta

Kesimpulan serta Langkah Selanjutnya

Persyaratan

  • Pengalaman mengkodekan Python yang memadai pada tingkat menengah ke atas
  • Memahami konsep pemrograman berorientasi objek serta pengujian dasar
  • Biasa menggunakan baris perintah serta alat Git

Target Peserta

  • Pengembang Python senior
  • Insinyur perangkat lunak yang bertanggung jawab atas kualitas dan struktur kode Python
  • Lead teknis serta insinyur DevOps atau MLOps yang bekerja dengan basis kode Python
 28 Jam

Jumlah Peserta


Harga per Peserta

Testimoni (2)

Kursus Mendatang

Kategori Terkait