Celoroční kurz programování v Pythonu pro věk 12–15 let. Postavený na principu
„nejdřív výsledek, pak teorie": už první hodinu vzniká webová aplikace,
kterou děti vidí v prohlížeči, a každá další hodina do ní přidává nový
programátorský koncept.
Výsledkem je hra PyQuest — webová RPG hra s postavou, inventářem,
souboji, místnostmi a ukládáním postupu.
Jak bude vypadat hotová hra
Hráč si vytvoří a pojmenuje svou postavu, vybere jí povolání a nastaví vlastní statistiky. (hodina 3)
Hra se umí rozhodovat: různá místa nabídnou jiné možnosti podle toho, co hrdina má, kde právě je a co už zvládl. (hodiny 4 a 7)
Mezi kliknutími si PyQuest pamatuje stav hrdiny, takže se hra neresetuje pokaždé od začátku. (hodina 5)
Hráč sbírá a spravuje inventář předmětů i zlato, které se mu budou hodit na dalších výpravách. (hodina 6)
Hlášky a popisy se mění podle situace i podle jména hrdiny, takže hra působí živě a osobně. (hodina 8)
Hráč svádí souboje s příšerami, které mají různé vlastnosti a schopnosti. (hodiny 5, 11 a 16)
Ve hře je náhoda: hází se kostkou, padá náhodná kořist a občas přijde nečekaná událost. (hodina 11)
Hru jde uložit a příště se k ní vrátit přesně tam, kde hráč skončil. (hodina 14)
Kód hry bude přehledně rozdělený do funkcí, tříd a několika souborů, takže z malé ukázky vznikne opravdový projekt. (hodiny 10, 15, 16 a 17)
Na konci roku má každý svoji hru nasazenou na internetu a může ji ukázat komukoliv přes odkaz. (hodina 18)
Jak je hodina postavená
Každá stránka má čtyři části:
Pro učitele — technický i netechnický výklad, analogie, časté chyby
Ukázky — hotový kód k promítání, píše se živě před dětmi
Cvičení — 4–5 úloh s podrobným zadáním a třemi úrovněmi obtížnosti
Řešení — hotový kód pouze pro učitele
Časové rozvržení
Ze tří hodin IT se programování věnují dvě. Doporučené tempo jedné dvouhodiny:
Část
Čas
Motivace a co dnes vytvoříme
5 min
Výklad a živá ukázka
15–20 min
Společné experimenty „co když"
10 min
Samostatná cvičení
30–40 min
Přírůstek do projektu PyQuest
20 min
Umíme informatiku (rychlejší studenti)
10 min
Reflexe a zadání domácího úkolu
5 min
Práce se smíšenou skupinou
Každé cvičení má tři úrovně. Začátečník odchází s funkčním programem,
pokročilý má co dělat.
Minimum — musí zvládnout každý
Rozšíření — přidá další vlastnost
Výzva — vlastní návrh bez přesného návodu
Nástroje
Python 3.10+, VS Code s rozšířením Python, knihovny streamlit a pillow.
Instalace probíhá na první hodině.