Domů > Odborné články > Gymnaziální vzdělávání > Didaktické hry ve výuce informatiky
Odborný článek

Didaktické hry ve výuce informatiky

4. 1. 2013 Gymnaziální vzdělávání
Autor
Ing. Ivan Ryant
Spoluautoři
Jiří Adamec
Jakub Doucek
Radek Jireš
Martin Chudoba
Ivan Ryant
Milan Zelenka

Anotace

Didaktické hry nabízejí učiteli jednu z nejlepších možností, jak motivovat žáky ke studiu. Na Fakultě informačních technologií ČVUT vytváříme v rámci softwarových týmových projektů a bakalářských prací hry pro výuku informatiky a ICT na gymnáziích. Hry hodláme postupně vkládat do digifolia, v tomto článku nabízíme první z nich k vyzkoušení.

Žáci si rádi hrají a toho se dá a má využívat. Počítač nám k tomu dává spoustu báječných příležitostí, o kterých se učiteli národů ani nesnilo, když svého času pronesl kouzelné zaklínadlo „škola hrou“. Pro mne jako pro učitele je snad největší odměnou a uznáním, když žáci na konci vyučování nechtějí jít domů, protože jsou zaujati řešením nějaké úlohy. Těžko se mi skrývá radost – ale nechci si děti kazit, tak se tvářím, jako že mi to nevadí, zrovna dneska ani já nespěchám domů, v klidu si to dokončete.

Nejúspěšnější bývají didaktické hry. Pokud nejsou prvoplánově poučné, nýbrž prvoplánově akční nebo dobrodružné, žáci snesou i amatérské provedení a nechají se vtáhnout do hry. Pak jim nevadí ani druhotný cíl hry (ale prvotní cíl výuky), že musí něco podstatného pochopit, aby mohli ve hře uspět.

Největší potíž s didaktickými hrami je jejich pracnost. Se psaním hry „Záhada slibového pahorku“ jsem strávil celé Vánoce, jarní prázdniny, Velikonoce a většinu víkendů, než jsem ji dokopal do stavu, ve kterém jsem ji mohl předhodit žákům k vyzkoušení. Vyzkoušená byla během asi dvou vyučovacích hodin – didaktický cíl se sice některým žákům podařilo obejít, nicméně poprvé ve své kariéře jsem zažil dvakrát 45 minut naprostého soustředění a usilovné práce všech žáků včetně těch, kteří dosud vždycky vykazovali příznaky lehkých dysfunkcí. Látka, kterou jsme měli probírat měsíc, byla vysvětlena a procvičena za týden. Bohužel efektivita mé práce se blížila nule.

Novou příležitost mi dalo působení na Fakultě informačních technologií ČVUT, neboť jsem se stal vrchním dozorcem několika týmových projektů – a zadání těch projektů jsem si měl sám vymyslet. Nemuseli mi říkat dvakrát: pár témat na didaktické hry mi už nějakou dobu vrtalo hlavou, a jak jsem zjistil, vysokoškoláci mají o programování her velký zájem. Jediný problém je, že tým studentů-vývojářů se po dokončení projektu rozpadne a není nikdo, kdo by o vytvořené programy a jejich případné uživatele dále pečoval. Je to vážné omezení, protože ty programy sice jsou rutinně otestované, ale nejsou vyzkoušené v běžném provozu, tj. ve výuce. Můžeme je tedy poskytnout spíš na vyzkoušení, abychom získali poznatky z provozu, ale o hotovém softwaru se dá těžko mluvit. Nicméně doufám, že i tak mohou kolegům učitelům dobře posloužit.

Simulace TCP

Vzdělávací program gymnázia vyžaduje, aby učitelé poučili žáky o fungování internetu. Jenže vysvětlit, jak se po nespolehlivých datových linkách dají přenášet libovolně dlouhé zprávy docela spolehlivě a bez chyb, to bývá nad síly učitele a nad chápání žáků. Proto se tento základní princip většiny internetových aplikací vysvětluje jen velmi zřídka. Přitom na něm není nic obtížného, když si jej člověk může „osahat“ prakticky.

Dodejme, že tento mechanismus spolehlivého přenosu zpráv po nespolehlivých linkách zajišťuje v transportní vrstvě internetu Transmission Control Protocol (TCP). Používá se pak v protokolech aplikační vrstvy, jako je HTTP (webové stránky) nebo SMTP (zprávy elektronické pošty).

Je to tedy báječné téma na didaktickou hru. Zpočátku ji žáci hráli tak, že běhali po chodbách gymnázia a na útržcích papíru přenášeli kousky zprávy, kterou žák-přijímač skládal dohromady. Háček byl v tom, že na chodbách číhali žáci-chyby, kteří simulovali rušení a žákům-signálům, které chytili, odebírali pakety se zlomky zprávy. Celá hra bývala provázena šíleným dusotem, ječením slečen, když na ně zpoza rohu vybafla chyba, a nadáváním pánů profesorů, kteří vybíhali ze tříd a jaksi nemohli pochopit, že žáci docela vážně simulují provoz TCP na internetu. Horší překážkou než profesoři se však časem ukázali samotní žáci. Zřejmě došlo k nějaké generační obměně nebo co a žáci začali být líní zvednout zadek ze židle, opustit facebook a běhat po chodbách. Signálové podváděli tak, že nosili několik paketů najednou (nejlépe všechny). Když je chytila chyba, odevzdali jí jeden a ostatní doručili lenivým krokem k přijímači. Slečny se dokonce schovávaly na záchodě, aby vůbec nemusely nosit pakety. Původně slibná forma výuky se ukázala jako zcela nepoužitelná.

Proto jsme se rozhodli hru naprogramovat tak, aby se dala hrát na počítači. Zprávy se přenášejí od vysílače k přijímači. Jsou rozděleny na pakety a pakety pak procházejí sítí, kde mohou být zničeny chybami (rušením). Pořadí paketů se během přenosu nezachovává, pakety proto musí být číslovány. Úkolem přijímače je zrekonstruovat zprávu z doručených paketů. Chybějící pakety si přijímač může vyžádat od vysílače znovu. Cílem hráče je úspěšně přenést co nejvíce zpráv za danou dobu hry. Cílem hry je, aby žáci pochopili princip přenášení zpráv v paketových sítích.

Spuštění hry
Obr. 1: Spuštění hry
Autor díla: Radek Jireš

Před začátkem hry může obsluha serveru vybrat jednu z předem připravených map sítě. Další parametry, jako počet hráčů, doba hry a chybovost sítě, jsou nastaveny pevně, optimálně – na základě dosavadních zkušeností s hraním hry. Potíže jsou zejména s počtem hráčů: je-li hráčů mnoho, hra se stává nepřehlednou, až zmatenou. Aby si zahrála celá třída najednou, je potřeba utvořit menší skupinky. V každé skupince jeden žák obsluhuje server a současně si spustí i klienta, aby mohl hrát. Hraní po skupinkách je podrobně popsáno v příručce. Jakmile obsluha spustí herní server, mohou se k němu připojovat žáci-hráči. V klientských programech všichni průběžně sledují seznam již připojených hráčů.

Serverová aplikace při připojování hráčů
Obr. 2: Serverová aplikace při připojování hráčů
Autor díla: Radek Jireš

Obsluha může pomocí serveru vyloučit libovolného hráče ze hry. Když jsou všichni hráči ve stavu „připraven = 1“, tak může spustit hru. V tom okamžiku se všem hráčům spustí hra a na serveru se zobrazuje průběžný výpis. Každý hráč hraje za jeden pomyslný (simulovaný) počítač, který vysílá zprávy. Jeho úkolem je získat co nejvíc bodů. Body hráč získává za úspěšně doručené pakety a zprávy. Pakety putují po síti a cílovou adresu mají určenou svou barvou. Směrovače (routery) rozhodují, kam pakety poputují. Směrování se ve směrovači nastavuje šipkou, která má shodnou barvu s barvou paketu. Hráč může tyto šipky přenastavovat a tím zajistit, aby jeho pakety došly správně k příjemcům. Tímto způsobem může také způsobit, že pakety soupeřů budou bloudit.

Klientská aplikace během hry
Obr. 3: Klientská aplikace během hry
Autor díla: Radek Jireš

Zprávy jsou předem zadané do seznamu zpráv. Vysílaná zpráva se automaticky dělí na pakety. Délku paketu může hráč nastavit a tím ovlivnit pravděpodobnost, že paket v pořádku dojde. Pakety se přenášejí samoopravným protokolem: přijímač potvrzuje přijetí každého paketu, a pokud vysílač nedostane potvrzení ve stanovené lhůtě, pošle týž paket znovu. Přijímač skládá přijaté pakety do zpráv podle pořadových čísel, potvrzuje přijaté pakety a žádá o opakování chybějících paketů.

Hra má dvě verze pro operační systémy Linux Ubuntu a Microsoft Windows. Lze ji hrát i v sítích, kde jsou počítače s oběma typy operačních systémů.

Závěr

Hra byla průběžně testována během vývoje a nakonec vyzkoušena jako celek i ve výuce na gymnáziu. Přesto může obsahovat chyby a vykazovat nedostatky, které objeví až nepředpojatý uživatel v provozu. Proto prosíme zejména učitele, kteří mohou hru vyzkoušet ve výuce, aby si ji stáhli z digifolia na adrese http://digifolio.rvp.cz/view/view.php?id=6191 a sdělili nám svoje poznatky. To by nám velmi pomohlo, děkujeme předem! S programem je potřeba zacházet v souladu s autorským zákonem. Jedná se o školní dílo, které jeho autoři a FIT ČVUT poskytují k vyzkoušení a pro vzdělávací účely.

Podobnou, ale jednodušší hru vytvářejí jako týmový projekt také žáci volitelného předmětu programování na gymnáziu. Pracují s velkým nadšením a během několika měsíců uvidíme, jak dopadne srovnání jejich začátečnického řešení s řešením pokročilejším, o kterém pojednává tento článek.

Licence

Všechny články jsou publikovány pod licencí Creative Commons BY-NC-ND.

Hodnocení od uživatelů

Ivan Ryant
21. 1. 2014, 11:21
Dovoluji si upozornit na přírůstek v digifoliu http://digifoli…?id=6191 , kde nyní najdete na vyzkoušení simulátor návrhu sítě a nejdůležitějších síťových protokolů. Simulátor sítě je určen k výuce IVT na gymnáziích a pokrývá jedno z témat RVP-G. K simulátoru je k dispozici příručka a vše je podrobně vysvětleno v bakalářské práci, která je rovněž k dispozici. Autorem simulátoru je pan Martin Chudoba. Simulátor byl vytvořen na ČVUT FIT jako bakalářská práce.

Váš komentář

Pro vložení komentáře je nutné se nejprve přihlásit.

Článek není zařazen do žádného seriálu.