Kerangka Materi
Hari 1 — Fondasi Python yang Kokoh & Tooling
Fitur Python Modern dan Tipping
- Dasar-dasar tipping, generics, Protocols, dan TypeGuard
- Dataclass, dataclass beku, dan ringkasan attrs
- Pattern matching (PEP 634+) dan penggunaan yang idiomatik
Kualitas Kode dan Tooling
- Formatter kode dan linter: black, isort, flake8, ruff
- Pengecekan tipe statis dengan MyPy dan pyright
- Pre-commit hooks dan alur kerja pengembang
Manajemen Proyek dan Pengemasan
- Manajemen dependensi dengan Poetry dan lingkungan virtual
- Tata letak paket, entry points, dan praktik terbaik versioning
- Membuild dan menerbitkan paket ke PyPI dan registri privat
Hari 2 — Pola Desain & Praktik Arsitektur
Pola Desain di Python
- Pola kreasi: Factory, Builder, Singleton (varian Pythonic)
- Pola struktural: Adapter, Facade, Decorator, Proxy
- Pola perilaku: Strategy, Observer, Command
Prinsip Arsitektur
- Prinsip SOLID yang diterapkan pada basis kode Python
- Arsitektur Hexagonal/Clean dan batas-batas
- Pola injeksi dependensi dan manajemen konfigurasi
Modularitas dan Penggunaan Ulang
- Merancang kode pustaka vs aplikasi
- API, antarmuka stabil, dan semantic versioning
- Penanganan konfigurasi, rahasia, dan pengaturan khusus lingkungan
Hari 3 — Konkurensi, Async IO, dan Kinerja
Konkurensi dan Paralelisme
- Fundamental threading dan implikasi GIL
- Multiprocessing dan pool proses untuk tugas yang terikat CPU
- Kapan menggunakan concurrent.futures vs multiprocessing
Pemrograman Async dengan asyncio
- Pola async/await, event loop, dan pembatalan
- Merancang pustaka async dan interoperabilitas dengan kode sinkron
- Pola yang terikat IO, backpressure, dan pembatasan laju
Profil dan Optimasi
- Alat profil: cProfile, pyinstrument, perf, memory_profiler
- Optimasi jalur panas dan menggunakan ekstensi C/Numba di tempat yang tepat
- Pengukuran latensi, throughput, dan utilisasi sumber daya
Hari 4 — Pengujian, CI/CD, Observabilitas, dan Penerbitan
Strategi Pengujian dan Otomatisasi
- Pengujian unit dan fixture dengan pytest; organisasi pengujian
- Pengujian berbasis properti dengan Hypothesis dan pengujian kontrak
- Mocking, monkeypatching, dan pengujian kode asinkron
CI/CD, Rilis, dan Pemantauan
- Integrasi pengujian dan gerbang kualitas ke GitHub Actions/GitLab CI
- Membuild kontainer yang dapat direproduksi dengan Docker dan build multi-stage
- Observabilitas aplikasi: logging terstruktur, metrik Prometheus, dan tracing
Keamanan, Penguatan, dan Praktik Terbaik
- Audit dependensi, dasar-dasar SBOM, dan pemindaian kerentanan
- Praktik pemrograman aman untuk validasi input dan manajemen rahasia
- Penguatan runtime: batas sumber daya, hak pengguna, dan keamanan kontainer
Proyek Capstone & Ulasan
- Laboratorium tim: merancang dan mengimplementasikan layanan kecil menggunakan pola dari kursus
- Pengujian, pengecekan tipe, pengemasan, dan pipeline CI untuk proyek
- Ulasan akhir, kritik kode, dan rencana peningkatan yang dapat ditindaklanjuti
Ringkasan dan Langkah Berikutnya
Persyaratan
- Pengalaman kuat dalam pemrograman Python tingkat menengah
- Kepahaman tentang pemrograman berorientasi objek dan pengujian dasar
- Pengalaman menggunakan baris perintah dan Git
Peminat
- Pengembang Python Senior
- Insinyur perangkat lunak yang bertanggung jawab atas kualitas kode dan arsitektur Python
- Pemimpin teknis dan insinyur MLOps/DevOps yang bekerja dengan basis kode Python
Testimoni (2)
semuanya sempurna
Florin Vrincianu
Kursus - Python Programming Fundamentals
Diterjemahkan Mesin
Latihan praktis yang terkait dengan materi benar-benar membantu untuk memahami lebih dalam setiap topik. Selain itu, gaya memulai kelas dengan kuliah dan dilanjutkan dengan latihan praktis sangat baik dan membantu untuk mengaitkannya dengan materi yang telah disampaikan sebelumnya.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Kursus - Introduction to Data Science and AI using Python
Diterjemahkan Mesin