Návrh Školení
Den 1 — Robustní základy Pythonu a nástroje
Moderní funkce Pythonu a typování
- Základy typování, generiky, Protocols a TypeGuard
- Dataclasses, frozen dataclasses a přehled nástroje attrs
- Pattern matching (PEP 634+) a idiomatičné použití
Kvalita kódu a nástroje
- Formátování kódu a lintery: black, isort, flake8, ruff
- Statické kontroly typů pomocí MyPy a pyright
- Pre-commit hooky a pracovní postupy vývojáře
Správa projektů a balíkování
- Správa závislostí pomocí Poetry a virtuálních prostředí
- Struktura balíčku, vstupní body a nejlepší praktiky verzování
- Sestavování a publikování balíčků na PyPI a soukromé registry
Den 2 — Návrhové vzory a architektonické postupy
Návrhové vzory v Pythonu
- Tvorivé vzory: Factory, Builder, Singleton (Pythonické varianty)
- Strukturní vzory: Adapter, Facade, Decorator, Proxy
- Chování vzory: Strategy, Observer, Command
Architektonické principy
- SOLID principy aplikované na kódbase Pythonu
- Hexagonal/Clean Architecture a meze
- Postupy vkládání závislostí a správa konfigurace
Modularita a opakované použití
- Návrh kódů knihovny vs. aplikace
- API, stabilní rozhraní a semantické verzování
- Zpracování konfigurace, tajných údajů a nastavení specifických pro prostředí
Den 3 — Konkurence, Async IO a výkon
Konkurence a paralelizace
- Základy vlákna a dopady GIL
- Multiprocessing a procesní pool pro úlohy vázané na CPU
- Kdy používat concurrent.futures vs. multiprocessing
Asynchronní programování s asyncio
- Postupy Async/await, event loop a zrušení
- Návrh asynchronních knihoven a interoperabilita s synchronním kódem
- Postupy vázané na IO, zpětný tlak a omezování rychlosti
Profilování a optimalizace
- Nástroje pro profilování: cProfile, pyinstrument, perf, memory_profiler
- Optimalizace horkých cest a používání C-rozsazení/Numba, kde je vhodné
- Měření latence, průběžnosti a využití zdrojů
Den 4 — Testování, CI/CD, sledovatelnost a nasazení
Strategie testování a automatizace
- Unit testování a fixture s pytest; organizace testů
- Property-based testování s Hypothesis a kontraktové testování
- Mockování, monkeypatching a testování asynchronního kódu
CI/CD, vydávání a monitorování
- Integrace testů a kontrolních bran do GitHub Actions/GitLab CI
- Sestavování reprodukovatelných kontejnerů s Docker a víceúrovňovými buildy
- Sledovatelnost aplikací: strukturované logování, metriky Prometheus a sledování
Bezpečnost, posilování a nejlepší praktiky
- Audit závislostí, základy SBOM a skenování zranitelností
- Bezpečné postupy kódování pro validaci vstupů a správu tajných údajů
- Posilování běhu: limity zdrojů, oprávnění uživatelů a bezpečnost kontejnerů
Capstone projekt a recenzí
- Skupinová laboratoř: návrh a implementace malé služby pomocí vzorů z kurzu
- Testování, kontroly typů, balíkování a CI pipeline pro projekt
- Konečná revize, kritika kódu a akční plán zlepšení
Shrnutí a další kroky
Požadavky
- Silná zkušenost s programováním v Pythonu na prostřední úrovni
- Ovládání objektově orientovaného programování a základního testování
- Zkušenost s používáním příkazového řádku a Gitu
Cílová skupina
- Senioři vývojáři Pythonu
- Software inženýři odpovědní za kvalitu a architekturu Python kódu
- Techničtí vedoucí a MLOps/DevOps inženýři pracující s kódbase Pythonu
Vyberte dostupný termín kurzu
- Formát Online
- Jazyk polština
- Kurz Veřejný kurz
- Datum zahájení 2027-01-11
- Doba trvání 4 dny (28 hodiny)
Čistá cena za účastníka
Reference (2)
všechno bylo dokonalé
Florin Vrincianu
Kurz - Python Programming Fundamentals
Přeloženo strojem
Praktické cvičení související s obsahem skutečně pomáhají lépe pochopit každý téma. Navíc, styl začínání hodiny přednáškou a pokračování praktickým cvičením je dobrý a užitečný pro propojení s přednáškou prezentovanou dříve.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Kurz - Introduction to Data Science and AI using Python
Přeloženo strojem