Scratch: Porovnání verzí

 
(Není zobrazeno 29 mezilehlých verzí od stejného uživatele.)
Řádek 1: Řádek 1:
{{Pracuje se}}
 
 
==Vizuální programovací jazyk==
 
==Vizuální programovací jazyk==
V procesu se jedná o programování pomocí vizuálních prvků, které představují určitý kus kódu. Nejčastěji jde o obrázkové reprezentace v podobě ikonek. Odstraňuje se tak nutnost naučení se syntaxe konkrétního jazyka a stačí jen vědět, jak vhodné stavební bloky poskládat tak, aby program dělal to, co chceme. To má své výhody ale i nevýhody. Výhodou je, že nemusíme znát syntaxi daného jazyka, pokud jsou bloky jednoznačně označené. Nevýhoda těchto jazyků je jejich funkční omezenost. Jde v podstatě jen o používání již předpřipravených bloků v konkrétním programovacím prostředí. Další nevýhodou může být přenositelnost. Většina těchto vizuálních programovacích jazyků potřebuje ke svému chodu nainstalované prostředí a program nekompiluje, jen interpretuje. Ve vizuálním programovacím jazyce tedy žádný, v praxi použitelný, program nevytvoříme. Jedná se však o vhodný nástroj, jak se naučit programovat. <ref name="zd">VÍDEŇSKÝ, Zdeněk. Vizuální programovací jazyk. Olomouc: Univerzita Palackého v Olomouc, Přírodovědecká fakulta, Katedra informatiky, 2017. 66 s. Vedoucí bakalářské práce: Mgr. Tomáš Kühr, Ph.D. [cit. 2021-08-11]. Dostupné z: https://theses.cz/id/mmlalk/21661373</ref>
+
Jedná se o [[Programování|programování]] pomocí vizuálních prvků, které představují určitý kus kódu. Nejčastěji jde o obrázkové reprezentace v podobě ikonek. Odstraňuje se tak nutnost naučení se [[Syntaxe|syntaxe]] konkrétního jazyka a stačí jen vědět, jak vhodné stavební bloky poskládat, tak, aby program dělal to, co chceme. To má své výhody ale i nevýhody. Výhodou je, že nemusíme znát syntaxi daného jazyka, pokud jsou bloky jednoznačně označené. Nevýhoda těchto jazyků je jejich funkční omezenost. Jde v podstatě jen o používání již předpřipravených bloků v konkrétním programovacím prostředí. Další nevýhodou může být přenositelnost. Většina těchto vizuálních [[Programovací jazyk|programovacích jazyků]] potřebuje ke svému chodu nainstalované prostředí a program nekompiluje, jen interpretuje. Ve vizuálním programovacím jazyce tedy žádný, v praxi použitelný, program není možné vytvořit. Jedná se však o vhodný nástroj, jak se naučit programovat. <ref name="zd">VÍDEŇSKÝ, Zdeněk. Vizuální programovací jazyk. Olomouc: Univerzita Palackého v Olomouc, Přírodovědecká fakulta, Katedra informatiky, 2017. 66 s. Vedoucí bakalářské práce: Mgr. Tomáš Kühr, Ph.D. [cit. 2021-08-11]. Dostupné z: https://theses.cz/id/mmlalk/21661373</ref>
  
 
==Scratch==
 
==Scratch==
Scratch je jednoduchý vizuální [[Programovací jazyk|programovací jazyk]] určený zejména pro děti (od 8 do 16 let), ale je vhodný také pro úplné začátečníky jakékoliv věkové skupiny pro pochopení základních principů při programování. Pro děti ve věku od 5 do 7 let poté existuje zjednodušená verze [https://www.scratchjr.org/ ScratchJr]. Vytváří a rozvíjí jej komunita kolem MIT Media Lab. Scratch slouží k výuce programování. Dají se pomocí něj vytvářet jednoduché hry, animace či interaktivní prezentace. Je dostupný na stránkách [https://scratch.mit.edu/ zde]. <ref name="uvod">Co je Scratch a proč začít právě s ním? Scratch [online]. [cit. 2021-08-09]. Dostupné z: http://scratch.chaputo.cz/co-je-to-scratch/</ref> Umožňuje programovat interaktivní příběhy, hry a animace a následně své výtvory sdílet s online komunitou. Je používán ve více než 150 zemích světa a je dostupný ve více než 60 jazycích. <ref name="os">O Scratchi. Scratch [online]. [cit. 2021-08-09]. Dostupné z: https://scratch.mit.edu/about</ref>
+
[[File:Scratch Logo.svg|thumb|Scratch Logo]]
Scratch funguje ve většině současných webových prohlížečů stolních i přenosných počítačích a tabletech. Projekty je možné prohlížet na mobilech, ale není možné zde projekty vytvářet či měnit. Je možné jej také využívat offline a to prostřednictvím stažení aplikace Scratch. <ref name="oos">Často kladené otázky. Scratch [online]. [cit. 2021-08-09]. Dostupné z: https://scratch.mit.edu/info/faq</ref>
+
Scratch je jednoduchý vizuální programovací jazyk určený zejména pro děti (od 8 do 16 let). Je však vhodný také pro úplné začátečníky jakékoliv věkové skupiny pro pochopení základních principů při programování. Pro děti ve věku od 5 do 7 let poté existuje zjednodušená verze [https://www.scratchjr.org/ ScratchJr]. Scratch vytváří a rozvíjí komunita kolem MIT Media Lab. Scratch slouží k výuce programování. Dají se pomocí něj vytvářet jednoduché [[Počítačová hra|hry]], animace či interaktivní prezentace. Je dostupný na stránkách [https://scratch.mit.edu/ zde]. <ref name="uvod">Co je Scratch a proč začít právě s ním? Scratch [online]. [cit. 2021-08-09]. Dostupné z: http://scratch.chaputo.cz/co-je-to-scratch/</ref> Umožňuje následně své výtvory sdílet s online komunitou. Je používán ve více než 150 zemích světa a je dostupný ve více než 60 jazycích. <ref name="os">O Scratchi. Scratch [online]. [cit. 2021-08-09]. Dostupné z: https://scratch.mit.edu/about</ref> Scratch funguje ve většině současných [[World Wide Web|webových prohlížečů]] stolních i přenosných [[Počítač|počítačích]] a tabletech. Projekty je možné prohlížet na [[Mobilní zařízení|mobilech]], ale není možné zde projekty vytvářet či měnit. Je možné jej také využívat off-line a to prostřednictvím stažení aplikace Scratch. <ref name="oos">Často kladené otázky. Scratch [online]. [cit. 2021-08-09]. Dostupné z: https://scratch.mit.edu/info/faq</ref>
 +
 
 +
Programovací bloky (pomocí nichž se aplikace programuje) jsou rozděleny do několika kategorií. Tyto programovací bloky se potom vkládají na tzv. Sprity, což jsou obrázky, ať už bitmapové nebo vektorové, které představují postavičky v programu. Výsledkem potom může být hra, animace a další. <ref name="zd">VÍDEŇSKÝ, Zdeněk. Vizuální programovací jazyk. Olomouc: Univerzita Palackého v Olomouc, Přírodovědecká fakulta, Katedra informatiky, 2017. 66 s. Vedoucí bakalářské práce: Mgr. Tomáš Kühr, Ph.D. [cit. 2021-08-11]. Dostupné z: https://theses.cz/id/mmlalk/21661373</ref>
 +
[[File:Gatto scratch.png|thumb|Postava kocoura]]
 +
 
 +
'''Obsahuje příkazy pro:'''
 +
 
 +
*pohyb (mezi možné pohyby, které lze nastavit patří: posuň se o - kroků, otoč se doprava o - stupňů, natoč se k, jdi na -, směr, když narazíš na okraj odraz se atd.)
 +
*vzhled (např. řekni - , mysli si, ukaž, velikost, název pozadí, jdi do popředí, skryj se atd.)
 +
*zvuk
 +
*pero (např. smaž, otiskni se, nastav odstín pera na - atd.)
 +
*[[Data|data]](např. nastav proměnnou na-, změň proměnou o -)
 +
*události (např. po kliknutí na vlajku, rozešli všem -, po stisku klávesy -)
 +
*ovládání (např. čekej sekundu, když - tak, zastav -, opakuj dokud nenastane -)
 +
*vnímání
 +
*operátory
 +
*bloky
 +
 
 +
'''Obsahuje objekty:'''
 +
*<u>projekt</u>: programy ve Scratchi nazýváme Projekty. Můžeme si je představit jako loutkové divadlo.  Máme k dispozici scénu, po které se pohybují postavy, které se řídí svými scénáři. Scéna může mít různé kulisy (pozadí) a postavy mohou převlékat kostým.
 +
*<u>scéna</u>: tvoří rámec a pozadí projektu. Jedná se o obrazovku, na které se projekt odehrává.
 +
*<u>postava</u>: jedná se o základní součást programu. Postavě pomocí scénářů říkáme, co má dělat a jak se má chovat. Pro vytvoření nového programu máme rovnou k dispozici postavu kocoura, ale můžeme přidat libovolné další postavy.
 +
*<u>scénář</u>: nebo-li skripta jsou řídící příkazy pro danou postavu nebo pro scénu. Tvoří se z programových bloků - příkazů.
 +
*<u>podmínka</u>: jedná se o otázku, na kterou program odpoví buď ane nebo ne. Pokud odpoví ano, je podmínka splněna, pokud ne, tak podmínka není splněna. Příkladem je: dotýká se postava okraje? Je myš stisknuta? <ref>Příkazy a objekty jazyka Scratch. Scratch - programování pro děti [online]. [cit. 2021-08-15]. Dostupné z: http://scratch.chaputo.cz/prikazy-objekty-jazyka-scratch/</ref>
  
 
==Výhody==
 
==Výhody==
* Během práce ve Scratchi se u dětí rozvíjí kreativní a logické myšlení a také schopnost algoritmizace. Dítě si sice „hraje“ s počítačem, ale při tom přemýšlí, počítá, kombinuje a tvoří.
+
 
* Scratch vychází z technik programování běžně používaných v „profesionálních“ programovacích jazycích, čímž umožňuje snadný a přirozený přechod na vyšší programovací jazyky.  
+
*Během práce ve Scratchi se u dětí rozvíjí kreativní a logické [[Myšlení|myšlení]] a také schopnost algoritmizace (algoritmizace je postup při tvorbě programu pro počítač, kterým lze prostřednictvím algoritmu řešit nějaký problém). Dítě si sice „hraje“ s počítačem, ale při tom přemýšlí, počítá, kombinuje a tvoří.
* Scratch je ideální k vytváření jednoduchých her, které je možné vytvořit velmi rychle, což může být pro děti motivující.
+
*Scratch vychází z technik programování běžně používaných v „profesionálních“ programovacích jazycích, čímž umožňuje snadný a přirozený přechod na vyšší programovací jazyky.
* Pro práci ve Scratchi nejsou nutné žádné zvláštní znalosti práce s počítačem. Stačí umět trochu pracovat s myší.
+
*Scratch je ideální k vytváření jednoduchých her, které je možné vytvořit velmi rychle, což může být pro děti motivující.
* Scratch je česky, není nutná znalost angličtiny.
+
*Pro práci ve Scratchi nejsou nutné žádné zvláštní znalosti práce s počítačem. Stačí umět trochu pracovat s myší.
* Jeho další výhodou je také to, že běží přímo ve webovém prohlížeči a je dostupný zdarma. <ref name="uvod">Co je Scratch a proč začít právě s ním? Scratch [online]. [cit. 2021-08-09]. Dostupné z: http://scratch.chaputo.cz/co-je-to-scratch/</ref>
+
*Scratch je česky, není nutná znalost angličtiny.
 +
*Jeho další výhodou je také to, že běží přímo ve webovém prohlížeči a je dostupný zdarma. <ref name="uvod">Co je Scratch a proč začít právě s ním? Scratch [online]. [cit. 2021-08-09]. Dostupné z: http://scratch.chaputo.cz/co-je-to-scratch/</ref>
  
 
==Nevýhody==
 
==Nevýhody==
* Scratch není „vážný“ programovací jazyk, chybí programovací koncepty (někteří odborníci jej kritizují za to, že v něm nejsou implementovány některé důležité programovací koncepty a je až příliš jednoduchý)
+
 
* Nestandardní struktura cyklů (v jazyce Scratch jsou implementovány dva příkazy cyklu: forever if (opakuj dokola pokud) a repeat until (opakuj, dokud nenastane)).
+
*Scratch není „vážný“ programovací jazyk a chybí mu programovací koncepty (někteří odborníci jej kritizují za to, že v něm nejsou implementovány některé důležité programovací koncepty a je až příliš jednoduchý)
** příkaz forever if: je specifický tím, že musí být posledním příkazem v každé sérii příkazů, protože za něj nelze připojit jiný příkaz. <ref name="dipl">HALOUSKOVÁ, Alena. Učebnice jazyka Scratch. [online]. Brno: 2012 Vedoucí diplomové práce: doc.RNDr. Tomáš Pitner, Ph.D. [cit. 2021-08-09]. Dostupné z: https://is.muni.cz/th/vrs79/DP_Halouskova.pdf</ref>
+
*Nestandardní struktura cyklů (v jazyce Scratch jsou implementovány dva příkazy cyklu: forever if (opakuj dokola pokud) a repeat until (opakuj, dokud nenastane)).
** příkaz repeat until: má podmínku na začátku cyklu, takže funguje jako kříženec příkazů repeat a while u většiny konvenčních jazyků. Jazyk Scratch lze proto použít pro výuku konceptu cyklů, cykly jsou pouze vyjádřeny mírně odlišným způsobem než u většiny ostatních programovacích jazyků.
+
**'''příkaz forever if:''' je specifický tím, že musí být posledním příkazem v každé sérii příkazů, protože za něj nelze připojit jiný příkaz. <ref name="dipl">HALOUSKOVÁ, Alena. Učebnice jazyka Scratch. [online]. Brno: 2012 Vedoucí diplomové práce: doc.RNDr. Tomáš Pitner, Ph.D. [cit. 2021-08-09]. Dostupné z: https://is.muni.cz/th/vrs79/DP_Halouskova.pdf</ref>
 +
**'''příkaz repeat until:''' má podmínku na začátku cyklu, takže funguje jako kříženec příkazů repeat a while u většiny konvenčních jazyků. Jazyk Scratch lze proto použít pro výuku konceptu cyklů, cykly jsou pouze vyjádřeny mírně odlišným způsobem než u většiny ostatních programovacích jazyků.
 +
 
 +
==Scratch Jr.==
 +
Již už zmínění Scratch Junior je vizuální programovací jazyk. Slouží jako pomůcka k výuce algoritmizace a programování. Prostředí této aplikace má velmi jednoduché rozhraní a dá se využít už pro žáky od mateřské školky. Aplikace obsahuje jen základní příkazy, které mají barevné rozlišení s velkými tlačítky s jednoduchým ovládáním a slouží tak k jednoduchému úvodu do programování. K dispozici jsou základní příkazy pro pohyb (krok, otočení), příkazy pro výstup (mluvení, zvuky), cyklus a zjednodušené podmínky. Postaviček může být na jedné ploše více a dokážou spolu komunikovat. Aplikace umí exportovat vytvořené projekty. <ref>Úvod. Začínáme se SCRATCH JUNIOR [online]. [cit. 2021-08-15]. Dostupné z: https://scratchd18234.estranky.cz/</ref>
  
 
==Další vizuální programovací jazyky==
 
==Další vizuální programovací jazyky==
 
===Baltík===
 
===Baltík===
Jedná se se o program od české společnosti SGP Systems. Jde o programovací jazyk s vlastním vývojovým prostředím pro výuku programování na základních nebo středních školách. Umožňuje programovat pomocí obrázkových ikon. Od verze 4 lze programovat i pomocí kódu v jazyce C#. Baltík je zatím jediným plně grafickým standardním programovacím jazykem na bázi C a Pascal. Skládá se z režimu skládání scény, programovací a malovací. V prvním režimu se skládá scéna z malých obrázků, které se dají v dalším režimu programovat. V rámci programování se programuje herní logika pomocí ikonek, kde každá představuje kus kódu. Do scény lze vložit i předdefinovanou postavičku čaroděje Baltíka, kterého lze pomocí ikonek programovat. <ref name="zd">VÍDEŇSKÝ, Zdeněk. Vizuální programovací jazyk. Olomouc: Univerzita Palackého v Olomouc, Přírodovědecká fakulta, Katedra informatiky, 2017. 66 s. Vedoucí bakalářské práce: Mgr. Tomáš Kühr, Ph.D. [cit. 2021-08-11]. Dostupné z: https://theses.cz/id/mmlalk/21661373</ref>
+
Jedná se se o program od české společnosti [https://www.sgpsys.com/cz/ SGP Systems]. Jde o programovací jazyk s vlastním vývojovým prostředím pro výuku programování na základních nebo středních školách. Umožňuje programovat pomocí obrázkových ikon. Od verze 4 lze programovat i pomocí kódu v jazyce [[C#]]. Baltík je zatím jediným plně grafickým standardním programovacím jazykem na bázi [[C]] a [[Pascal]]. Skládá se z režimu skládání scény, programování a malování. V prvním režimu se skládá scéna z malých obrázků, které se dají v dalším režimu programovat. V rámci programování se programuje herní logika pomocí ikonek, kde každá představuje kus kódu. Do scény lze vložit i předdefinovanou postavičku čaroděje Baltíka, kterého lze pomocí ikonek programovat. <ref name="zd">VÍDEŇSKÝ, Zdeněk. Vizuální programovací jazyk. Olomouc: Univerzita Palackého v Olomouc, Přírodovědecká fakulta, Katedra informatiky, 2017. 66 s. Vedoucí bakalářské práce: Mgr. Tomáš Kühr, Ph.D. [cit. 2021-08-11]. Dostupné z: https://theses.cz/id/mmlalk/21661373</ref>
  
===Kodu===
+
===Kodu Game Lab===
Jedná se o vizuální programovací jazyk od výzkumné skupiny Microsoft. Je vytvořen speciálně pro tvorbu 3D her. Jde tedy zároveň i o herní engine s jednoduchým ovládáním, kde si každý může
+
Jedná se o vizuální programovací jazyk od [[Microsoft]] Research Lab, pobočky firmy Microsoft. Je vytvořen speciálně pro tvorbu 3D her. Jde tedy zároveň i o herní engine s jednoduchým ovládáním, kde si každý může vytvořit hru bez znalostí programování. Tvorba probíhá v trojrozměrném světě, po kterém se může tvůrce jako pozorovatel pohybovat a na určitých místech tak může přidávat objekty a ty programovat znovu pomocí obrázkových příkazů. Opět je zde hlavní hrdina jako byl v předchozím případě Baltík. Zde se nachází robot [http://www.kodugamelab.com/ Kodu] či další roboti. Výsledek své práce si tvůrce může vyzkoušet přímo v programu a sdílet jej na speciálních stránkách s ostatními. <ref name="zd">VÍDEŇSKÝ, Zdeněk. Vizuální programovací jazyk. Olomouc: Univerzita Palackého v Olomouc, Přírodovědecká fakulta, Katedra informatiky, 2017. 66 s. Vedoucí bakalářské práce: Mgr. Tomáš Kühr, Ph.D. [cit. 2021-08-11]. Dostupné z: https://theses.cz/id/mmlalk/21661373</ref>
vytvořit hru bez znalostí programování. Tvorba probíhá v trojrozměrném světě, po kterém se může tvůrce jako pozorovatel pohybovat a na určitých místech tak může přidávat objekty a ty programovat znovu pomocí obrázkových příkazů. Opět je zde hlavní hrdina jako byl v předchozím případě Baltík. Zde se nachází robot Kodu či další roboti. Výsledek své práce si tvůrce může vyzkoušet přímo v programu a sdílet jej na speciálních stránkách s ostatními. <ref name="zd">VÍDEŇSKÝ, Zdeněk. Vizuální programovací jazyk. Olomouc: Univerzita Palackého v Olomouc, Přírodovědecká fakulta, Katedra informatiky, 2017. 66 s. Vedoucí bakalářské práce: Mgr. Tomáš Kühr, Ph.D. [cit. 2021-08-11]. Dostupné z: https://theses.cz/id/mmlalk/21661373</ref>
 
  
 
==Odkazy==
 
==Odkazy==
 
===Reference===
 
===Reference===
<references/>
+
<references />
===Doporučená literatura==
+
===Doporučená literatura===
* MCMANUS, Sean. Jak se naučit programovat v 10 lekcích. První české vydání. Praha: Svojtka & Co., 2017. 64 stran. Super lekce. ISBN 978-80-256-2046-5.
+
 
* Programování pro děti: naučte se programovat při tvorbě skvělých her. 1. vyd. Brno: Computer Press, 2013. 159 s. ISBN 978-80-251-3809-0.
+
*MCMANUS, Sean. Jak se naučit programovat v 10 lekcích. První české vydání. Praha: Svojtka & Co., 2017. 64 stran. Super lekce. ISBN 978-80-256-2046-5.
* KAFAI, Yasmin B. Connected code: why children need to learn programming [online]. Cambridge, Massachusetts: The MIT Press, [2014]. The John D. and Catherine T. Macarthur foundation series on digital media and learning [cit. 2021-08-09]. ISBN 0-262-31924-1. Dostupné z: http://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&db=nlabk&AN=815362.
+
*Programování pro děti: naučte se programovat při tvorbě skvělých her. 1. vyd. Brno: Computer Press, 2013. 159 s. ISBN 978-80-251-3809-0.
* VAN PUL, Sergio. Scratch 2.0 game development hotshoot: 10 engaging projects that will teach you how to build exciting games with the easy-to-use Scratch 2.0 environment [online]. Birmingham, England: Packt Publishing Ltd, 2014, ©2014 [cit. 2021-08-09]. ISBN 978-1-84969-757-6. Dostupné z: https://ebookcentral.proquest.com/lib/natl-ebooks/detail.action?docID=1481123.
+
*KAFAI, Yasmin B. Connected code: why children need to learn programming [online]. Cambridge, Massachusetts: The MIT Press, [2014]. The John D. and Catherine T. Macarthur foundation series on digital media and learning [cit. 2021-08-09]. ISBN 0-262-31924-1. Dostupné z: http://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&db=nlabk&AN=815362.
* MILONOVICH, Brandon. Scratch cookbook [online]. Birmingham, UK: Packt Pub., 2013 [cit. 2021-08-09]. Dostupné z: https://ebookcentral.proquest.com/lib/natl-ebooks/detail.action?docID=1236051.
+
*VAN PUL, Sergio. Scratch 2.0 game development hotshoot: 10 engaging projects that will teach you how to build exciting games with the easy-to-use Scratch 2.0 environment [online]. Birmingham, England: Packt Publishing Ltd, 2014, ©2014 [cit. 2021-08-09]. ISBN 978-1-84969-757-6. Dostupné z: https://ebookcentral.proquest.com/lib/natl-ebooks/detail.action?docID=1481123.
 +
*MILONOVICH, Brandon. Scratch cookbook [online]. Birmingham, UK: Packt Pub., 2013 [cit. 2021-08-09]. Dostupné z: https://ebookcentral.proquest.com/lib/natl-ebooks/detail.action?docID=1236051.
  
 
===Související články===
 
===Související články===
* [[Programovací jazyk]]<br />
+
 
* [[Počítačová hra]]<br />
+
*[[Programovací jazyk]]<br />
* [[Python]]<br />
+
*[[Počítačová hra]]<br />
* [[C++]]<br />
+
*[[Python]]<br />
* [[PHP]]<br />
+
*[[C++]]<br />
 +
*[[PHP]]<br />
  
 
===Klíčová slova===
 
===Klíčová slova===
Řádek 50: Řádek 78:
  
 
[[Kategorie:Informační studia a knihovnictví]]
 
[[Kategorie:Informační studia a knihovnictví]]
[[Kategorie:Státnicové otázky UISK]]
 
 
 
https://www.czechitas.cz/download/ScratchTutorial1.pdf
 
 
 
 
 
https://zdrojak.cz/clanky/uvod-jazyka-scratch/
 

Aktuální verze z 17. 8. 2021, 07:44

Vizuální programovací jazyk

Jedná se o programování pomocí vizuálních prvků, které představují určitý kus kódu. Nejčastěji jde o obrázkové reprezentace v podobě ikonek. Odstraňuje se tak nutnost naučení se syntaxe konkrétního jazyka a stačí jen vědět, jak vhodné stavební bloky poskládat, tak, aby program dělal to, co chceme. To má své výhody ale i nevýhody. Výhodou je, že nemusíme znát syntaxi daného jazyka, pokud jsou bloky jednoznačně označené. Nevýhoda těchto jazyků je jejich funkční omezenost. Jde v podstatě jen o používání již předpřipravených bloků v konkrétním programovacím prostředí. Další nevýhodou může být přenositelnost. Většina těchto vizuálních programovacích jazyků potřebuje ke svému chodu nainstalované prostředí a program nekompiluje, jen interpretuje. Ve vizuálním programovacím jazyce tedy žádný, v praxi použitelný, program není možné vytvořit. Jedná se však o vhodný nástroj, jak se naučit programovat. [1]

Scratch

Scratch Logo

Scratch je jednoduchý vizuální programovací jazyk určený zejména pro děti (od 8 do 16 let). Je však vhodný také pro úplné začátečníky jakékoliv věkové skupiny pro pochopení základních principů při programování. Pro děti ve věku od 5 do 7 let poté existuje zjednodušená verze ScratchJr. Scratch vytváří a rozvíjí komunita kolem MIT Media Lab. Scratch slouží k výuce programování. Dají se pomocí něj vytvářet jednoduché hry, animace či interaktivní prezentace. Je dostupný na stránkách zde. [2] Umožňuje následně své výtvory sdílet s online komunitou. Je používán ve více než 150 zemích světa a je dostupný ve více než 60 jazycích. [3] Scratch funguje ve většině současných webových prohlížečů stolních i přenosných počítačích a tabletech. Projekty je možné prohlížet na mobilech, ale není možné zde projekty vytvářet či měnit. Je možné jej také využívat off-line a to prostřednictvím stažení aplikace Scratch. [4]

Programovací bloky (pomocí nichž se aplikace programuje) jsou rozděleny do několika kategorií. Tyto programovací bloky se potom vkládají na tzv. Sprity, což jsou obrázky, ať už bitmapové nebo vektorové, které představují postavičky v programu. Výsledkem potom může být hra, animace a další. [1]

Soubor:Gatto scratch.png
Postava kocoura

Obsahuje příkazy pro:

  • pohyb (mezi možné pohyby, které lze nastavit patří: posuň se o - kroků, otoč se doprava o - stupňů, natoč se k, jdi na -, směr, když narazíš na okraj odraz se atd.)
  • vzhled (např. řekni - , mysli si, ukaž, velikost, název pozadí, jdi do popředí, skryj se atd.)
  • zvuk
  • pero (např. smaž, otiskni se, nastav odstín pera na - atd.)
  • data(např. nastav proměnnou na-, změň proměnou o -)
  • události (např. po kliknutí na vlajku, rozešli všem -, po stisku klávesy -)
  • ovládání (např. čekej sekundu, když - tak, zastav -, opakuj dokud nenastane -)
  • vnímání
  • operátory
  • bloky

Obsahuje objekty:

  • projekt: programy ve Scratchi nazýváme Projekty. Můžeme si je představit jako loutkové divadlo. Máme k dispozici scénu, po které se pohybují postavy, které se řídí svými scénáři. Scéna může mít různé kulisy (pozadí) a postavy mohou převlékat kostým.
  • scéna: tvoří rámec a pozadí projektu. Jedná se o obrazovku, na které se projekt odehrává.
  • postava: jedná se o základní součást programu. Postavě pomocí scénářů říkáme, co má dělat a jak se má chovat. Pro vytvoření nového programu máme rovnou k dispozici postavu kocoura, ale můžeme přidat libovolné další postavy.
  • scénář: nebo-li skripta jsou řídící příkazy pro danou postavu nebo pro scénu. Tvoří se z programových bloků - příkazů.
  • podmínka: jedná se o otázku, na kterou program odpoví buď ane nebo ne. Pokud odpoví ano, je podmínka splněna, pokud ne, tak podmínka není splněna. Příkladem je: dotýká se postava okraje? Je myš stisknuta? [5]

Výhody

  • Během práce ve Scratchi se u dětí rozvíjí kreativní a logické myšlení a také schopnost algoritmizace (algoritmizace je postup při tvorbě programu pro počítač, kterým lze prostřednictvím algoritmu řešit nějaký problém). Dítě si sice „hraje“ s počítačem, ale při tom přemýšlí, počítá, kombinuje a tvoří.
  • Scratch vychází z technik programování běžně používaných v „profesionálních“ programovacích jazycích, čímž umožňuje snadný a přirozený přechod na vyšší programovací jazyky.
  • Scratch je ideální k vytváření jednoduchých her, které je možné vytvořit velmi rychle, což může být pro děti motivující.
  • Pro práci ve Scratchi nejsou nutné žádné zvláštní znalosti práce s počítačem. Stačí umět trochu pracovat s myší.
  • Scratch je česky, není nutná znalost angličtiny.
  • Jeho další výhodou je také to, že běží přímo ve webovém prohlížeči a je dostupný zdarma. [2]

Nevýhody

  • Scratch není „vážný“ programovací jazyk a chybí mu programovací koncepty (někteří odborníci jej kritizují za to, že v něm nejsou implementovány některé důležité programovací koncepty a je až příliš jednoduchý)
  • Nestandardní struktura cyklů (v jazyce Scratch jsou implementovány dva příkazy cyklu: forever if (opakuj dokola pokud) a repeat until (opakuj, dokud nenastane)).
    • příkaz forever if: je specifický tím, že musí být posledním příkazem v každé sérii příkazů, protože za něj nelze připojit jiný příkaz. [6]
    • příkaz repeat until: má podmínku na začátku cyklu, takže funguje jako kříženec příkazů repeat a while u většiny konvenčních jazyků. Jazyk Scratch lze proto použít pro výuku konceptu cyklů, cykly jsou pouze vyjádřeny mírně odlišným způsobem než u většiny ostatních programovacích jazyků.

Scratch Jr.

Již už zmínění Scratch Junior je vizuální programovací jazyk. Slouží jako pomůcka k výuce algoritmizace a programování. Prostředí této aplikace má velmi jednoduché rozhraní a dá se využít už pro žáky od mateřské školky. Aplikace obsahuje jen základní příkazy, které mají barevné rozlišení s velkými tlačítky s jednoduchým ovládáním a slouží tak k jednoduchému úvodu do programování. K dispozici jsou základní příkazy pro pohyb (krok, otočení), příkazy pro výstup (mluvení, zvuky), cyklus a zjednodušené podmínky. Postaviček může být na jedné ploše více a dokážou spolu komunikovat. Aplikace umí exportovat vytvořené projekty. [7]

Další vizuální programovací jazyky

Baltík

Jedná se se o program od české společnosti SGP Systems. Jde o programovací jazyk s vlastním vývojovým prostředím pro výuku programování na základních nebo středních školách. Umožňuje programovat pomocí obrázkových ikon. Od verze 4 lze programovat i pomocí kódu v jazyce C#. Baltík je zatím jediným plně grafickým standardním programovacím jazykem na bázi C a Pascal. Skládá se z režimu skládání scény, programování a malování. V prvním režimu se skládá scéna z malých obrázků, které se dají v dalším režimu programovat. V rámci programování se programuje herní logika pomocí ikonek, kde každá představuje kus kódu. Do scény lze vložit i předdefinovanou postavičku čaroděje Baltíka, kterého lze pomocí ikonek programovat. [1]

Kodu Game Lab

Jedná se o vizuální programovací jazyk od Microsoft Research Lab, pobočky firmy Microsoft. Je vytvořen speciálně pro tvorbu 3D her. Jde tedy zároveň i o herní engine s jednoduchým ovládáním, kde si každý může vytvořit hru bez znalostí programování. Tvorba probíhá v trojrozměrném světě, po kterém se může tvůrce jako pozorovatel pohybovat a na určitých místech tak může přidávat objekty a ty programovat znovu pomocí obrázkových příkazů. Opět je zde hlavní hrdina jako byl v předchozím případě Baltík. Zde se nachází robot Kodu či další roboti. Výsledek své práce si tvůrce může vyzkoušet přímo v programu a sdílet jej na speciálních stránkách s ostatními. [1]

Odkazy

Reference

  1. 1,0 1,1 1,2 1,3 VÍDEŇSKÝ, Zdeněk. Vizuální programovací jazyk. Olomouc: Univerzita Palackého v Olomouc, Přírodovědecká fakulta, Katedra informatiky, 2017. 66 s. Vedoucí bakalářské práce: Mgr. Tomáš Kühr, Ph.D. [cit. 2021-08-11]. Dostupné z: https://theses.cz/id/mmlalk/21661373
  2. 2,0 2,1 Co je Scratch a proč začít právě s ním? Scratch [online]. [cit. 2021-08-09]. Dostupné z: http://scratch.chaputo.cz/co-je-to-scratch/
  3. O Scratchi. Scratch [online]. [cit. 2021-08-09]. Dostupné z: https://scratch.mit.edu/about
  4. Často kladené otázky. Scratch [online]. [cit. 2021-08-09]. Dostupné z: https://scratch.mit.edu/info/faq
  5. Příkazy a objekty jazyka Scratch. Scratch - programování pro děti [online]. [cit. 2021-08-15]. Dostupné z: http://scratch.chaputo.cz/prikazy-objekty-jazyka-scratch/
  6. HALOUSKOVÁ, Alena. Učebnice jazyka Scratch. [online]. Brno: 2012 Vedoucí diplomové práce: doc.RNDr. Tomáš Pitner, Ph.D. [cit. 2021-08-09]. Dostupné z: https://is.muni.cz/th/vrs79/DP_Halouskova.pdf
  7. Úvod. Začínáme se SCRATCH JUNIOR [online]. [cit. 2021-08-15]. Dostupné z: https://scratchd18234.estranky.cz/

Doporučená literatura

  • MCMANUS, Sean. Jak se naučit programovat v 10 lekcích. První české vydání. Praha: Svojtka & Co., 2017. 64 stran. Super lekce. ISBN 978-80-256-2046-5.
  • Programování pro děti: naučte se programovat při tvorbě skvělých her. 1. vyd. Brno: Computer Press, 2013. 159 s. ISBN 978-80-251-3809-0.
  • KAFAI, Yasmin B. Connected code: why children need to learn programming [online]. Cambridge, Massachusetts: The MIT Press, [2014]. The John D. and Catherine T. Macarthur foundation series on digital media and learning [cit. 2021-08-09]. ISBN 0-262-31924-1. Dostupné z: http://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&db=nlabk&AN=815362.
  • VAN PUL, Sergio. Scratch 2.0 game development hotshoot: 10 engaging projects that will teach you how to build exciting games with the easy-to-use Scratch 2.0 environment [online]. Birmingham, England: Packt Publishing Ltd, 2014, ©2014 [cit. 2021-08-09]. ISBN 978-1-84969-757-6. Dostupné z: https://ebookcentral.proquest.com/lib/natl-ebooks/detail.action?docID=1481123.
  • MILONOVICH, Brandon. Scratch cookbook [online]. Birmingham, UK: Packt Pub., 2013 [cit. 2021-08-09]. Dostupné z: https://ebookcentral.proquest.com/lib/natl-ebooks/detail.action?docID=1236051.

Související články

Klíčová slova

vizuální programovací jazyk, programování, počítačové hry, programovací jazyk