Python - Async IO: Korutiny v Pythonu (PYTH4)

Programování, Python

Ovládli jste všechny běžné aspekty Pythonu a chybí vám už jen asynchronní korutiny? Python nabízí možnost programování úloh zpracovávaných plánovačem v rámci jednoho programového vlákna. Spolu s knihovnou na zpracování asynchronní komunikace a událostí tak lze i v Pythonu programovat pomocí kooperativních úloh. Přihlaste se na praktický workshop, který vás provede od jednoduchých iterátorů a generátorů až po psaní asynchronních korutin. Naučte se psát programy založené na událostech a vícekrokových kooperativních úlohách. Vyzkoušejte si efektivní styl programování vhodný pro náročnější programátory.

Privátní školení a termíny na míru

Veřejné termíny pro toto školení vzhledem k jeho specifičnosti v současné době nejsou vypisovány. Tento kurz nadále realizujeme jako uzavřené firemní školení. V případě privátního kurzu na míru je níže uvedená osnova pouze inspirací. Finální obsah vzdělávání, jeho délka i termíny budou přizpůsobeny konkrétním potřebám a cílům účastníků.

Cenovou nabídku vám rádi připravíme na základě vstupů zaslaných e-mailem nebo zadaných prostřednictvím poptávkového formuláře. Cena privátního školení vychází z náročnosti požadované obsahové náplně školení, časového rozsahu a celkového počtu přihlášených osob.
Níže uvedená orientační cena na osobu je kalkulována v případě privátního školení pro 3-4 účastníky, a to při zachování standardní délky školení.

KDE A KDY KURZ PROBÍHÁ?

Kontaktujte nás

S námi máte na výběr: Přijďte na kurz osobně do naší učebny, nebo se ke kurzu připojte online. Pokud preferujete online formu, uveďte prosím do poznámky v objednávce "Připojím se virtuálně".
Více informací k hybridní formě školení naleznete zde.

Náplň kurzu:

Skrýt detaily
  • Základy kooperativního programování
    1. Souběh událostí a úloh
    2. Souběžné zpracování bez vláken
    3. Asynchronní nástroje v Pythonu
  • Srovnání možností souběžného zpracování
    1. Korutiny a callbacky
    2. Vícevláknové aplikace
    3. Víceprocesové aplikace
  • První korutiny
    1. Zpracování po částech
    2. Jednoduché generátory
    3. Od generátorů ke korutinám
    4. Neblokující čekání
  • Vstup a výstup
    1. Integrace s operačním systémem
    2. Čekání na události (futures)
  • Praktické asynchronní programování
    1. Smyčka událostí
    2. Síťová komunikace
    3. Uživatelský vstup a výstup
    4. Kooperativní výpočetní úlohy
  • Důležitá teorie
    1. Asymptotická složitost algoritmů
    2. Kooperativní cykly
  • Kombinace s vlákny operačního systému
    1. Multithreading a multiprocessing
    2. Integrace threadů a smyčky událostí
    3. Existující I/O knihovny a jejich integrace
  • Obecná doporučení
    1. Volba nástrojů pro souběžné zpracování
    2. Multiprocessing, multithreading, korutiny
    3. Psaní srozumitelného kódu
Doporučený předchozí kurz:
Python - návrhové vzory (PYTH3)
Časový rozvrh:
3 dny (9:00hod. - 17:00hod.)