Petr Kozák: Nástroje pro výuku programování

pondělí 25. května 2015 ·

Příspěvek slouží jako motivační nástroj především pro učitele a žáky středních škol. Zaměřuje se na to, proč je v dnešní době důležité učit se základům programování a stručně prezentuje některé méně známé nástroje pro výuku programování.


V 90. letech 20. století jsem byl hrdým majitelem počítače Didaktik M s osmibitovým procesorem Zilog Z80 a vlastními silami jsem se učil programovat v jazyce BASIC. Na gymnáziu přišla algoritmizace, vývojové diagramy a struktogramy, osobní počítač s procesorem Intel 80286 SX a programovací jazyk Karel pro výuku programování, který v mnoha podobách přežil dodnes. Ve druhé polovině 90. let jsem dostal možnost učit na střední škole Turbo Pascal s vestavěným jazykem Assembler a později Borland Delphi. Vlastně se učím programovací jazyky dodnes – HTML, XML, JavaScript, SQL, PHP, C atd. Vím, co je syntaxe a sémantika, znám základní vlastnosti algoritmu, řídící struktury, vím co je proměnná, chápu principy objektově orientovaného programování. Během svého působení jako OSVČ jsem dostal několik příležitostí podílet se na realizaci zajímavých projektů. Vývoj jde ale velmi rychle kupředu a mně začíná ujíždět vlak. Vlastně už je hodně daleko za kopečky.
Když na to zpětně vzpomínám, kromě toho, že mě programování vždy bavilo, pomohlo mi to i v mnoha dalších ohledech. Programování neznamená jen psaní kódu, vyžaduje konstruktivní myšlení, týmovou spolupráci, schopnost vyrovnat se s krizovými situacemi, ale především pomáhá rozvíjet logické myšlení i dnes tak populární myšlení informatické.

Mnoho známých osobností nejen z oblasti IT dnes zastává názor, že v éře informační společnosti by se lidé měli naučit alespoň základům programování. Považují to dokonce za jednu ze základních gramotností, kterou budou potřebovat proto, aby se v současném světě uplatnili. Nezáleží na tom, jestli budou v budoucnu programátory. Důležité je, aby měli přehled o tom, jakým způsobem se programy vytvářejí a jak počítače fungují.

Podporovatelem této myšlenky byl Steve Jobs, jeden ze zakladatelů a CEO Apple Inc., který řekl: "Všichni v této zemi byste se měli učit programování, protože vás to naučí myslet." Stephen Hawking, teoretický fyzik a kosmolog, kterému je v době vzniku tohoto článku 73 let, přestože mu lékaři předpověděli, že do svých 25 let zemře, řekl: "Pokud chcete odhalit tajemství vesmíru, nebo se chcete věnovat kariéře v 21. století, základy počítačového programování jsou zásadní dovedností, kterou byste se měli naučit." Podle Douglase Rushkoffa (americký spisovatel, fejetonista, lektor, představitel cyberpunku) je programování nezbytnou součástí lidského vzdělání. Člověk má jen dvě možnosti – „programovat nebo být programován“.

Abyste se mohli stát programátory, je nezbytné naučit se nejprve syntaxi (skladbu) jazyka, ve kterém chcete programovat. Je to podobné, jako když se učíte nový cizí jazyk. Jako základ pro ovládnutí jazyka potřebujete mít dostatečnou slovní zásobu, umět formulovat věty, používat správný slovosled atd. Bez těchto základních znalostí vám nebude rodilý mluvčí rozumět, nebo bude docházet k trapným či komickým situacím. Programovací jazyk je jen další jazyk, který má vlastní slovní zásobu, konstrukce a pravidla pro zápis. Pokud nedodržíte syntaxi, vámi vytvořený programový kód bude nefunkční.
Dnes existuje mnoho nástrojů, které vám více či méně zábavnou formou pomohou pochopit základní principy programování. Některé z těchto nástrojů mají propracované integrované vývojové prostředí do takové míry, že nemusíte vůbec psát programový kód, prostě jen přesouváte příkazy, konstrukce, události aj. pomocí funkce drag-and-drop, tedy uchopením a přesunutím objektu na požadovanou pozici ve zdrojovém zápisu. V podstatě se jedná o formu zábavné hry, jejímž úkolem je dosáhnout smysluplného cíle, v tomto případě vytvoření funkčního programu, který provádí přesně to, co jste od něj očekávali.

Narazil jsem na zajímavý článek Teaching Kids to Code, který porovnává téměř 50 různých nástrojů pro výuku programování. Jednotlivé nástroje ještě dělí podle hlavního účelu využití – výuka logiky kódování, programování hardware, tvorba kódu pomocí vizuálních bloků atd. Nebudu zde jeho obsah dále rozebírat. Můžete si ho přečíst. Místo toho se zaměřím na několik málo nástrojů, které tam nenajdete.

Code Studio

Prvním méně známým nástrojem je cloudová aplikace pro výuku programování Code Studio – Code With Anna and Elsa. Princip tvorby programu je podobný jako u notoricky známého prostředí Scratch, tedy tvorba kódu bez nutnosti jeho psaní, které je zde nahrazeno přesouváním a vkládáním vizuálních bloků představujících příkazy, konstrukce, události apod. Výuka probíhá v jednotlivých lekcích, ve kterých jsou postupně zadávány konkrétní úkoly. Účelem je pomocí kódu rozpohybovat postavy Annu a Elsu, které se na bruslích pohybují po ledě a svým pohybem vytvářejí různé obrazce. Toto prostředí podporuje také češtinu.


Nástroj je vzhledem nízké obtížnosti vhodný především pro žáky základních škol. To se potvrdilo i během našeho praktického ověřování s žáky studijního oboru na střední škole. S jednotlivými úrovněmi řešených úkolů neměli žáci žádné zásadní potíže, velmi rychle se v prostředí zorientovali a úlohy řešili velmi svižně a většinou bezchybně.

Comenius Logo

Přestože je programovací jazyk Logo ve výše zmiňovaném článku Teaching Kids to Code několikrát zmiňován, rád bych se u něj krátce zastavil. Prvním důvodem je, že se jedná o jeden z prvních programovacích jazyků, které vznikly pro účely výuky programování a jeho spoluautorem je zakladatel konstrukcionistické teorie učení Seymour Papert (viz Učit se znamená zamazat si ruce). Tím druhým důvodem je vývojové prostředí pro výuku jazyka Comenius Logo, které vzniklo na fakultě fyziky, matematiky a informatiky UK v Bratislavě na konci 20. století. Jedná se o starší desktopovou aplikaci, která možná potěší spíše nadšence než skutečné zájemce o výuku programování.

TryRuby

Ruby je relativně mladý programovací jazyk, který v polovině 90. let 20. století navrhl a vyvinul Yukihiro "Matz" Matsumoto. Jazyk je označován jako „general purpose”, což zjednodušeně znamená, že jde o programovací jazyk pro všeobecné využití, mimo jiné například pro tvorbu webových aplikací. Výhodou tohoto jazyka je jednoduchá a srozumitelná syntaxe. Jazyk Ruby si můžete vyzkoušet online ve webovém prohlížeči na adrese http://tryruby.org. Jedná se o zhruba 15ti minutové intro do základů syntaxe programovacího jazyka, nicméně pokud se nebudete řídit přesnými pokyny průvodce, můžete si pomocí tohoto nástroje vyzkoušet i složitější konstrukce.


Celý článek na spomocnik.rvp.cz.

Tento článek vznikl jako studentská práce.

0 komentářů:

Články dle data



Učitelské listy

Nabídka práce

Česká škola - portál pro ZŠ a SŠ

Česká škola poskytuje svým čtenářům diskusní prostor k vyjádření názorů na školskou problematiku. Tyto příspěvky se nemusí shodovat se stanoviskem redakce České školy a jsou uveřejňovány jako podnět k dalším diskusím.

Obsah článků nemusí vyjadřovat stanovisko redakce nebo vydavatele Albatros Media, a.s.


Všechna práva vyhrazena.

Tento server dodržuje právní předpisy
o ochraně osobních údajů.

ISSN 1213-6018




Licence Creative Commons

Obsah podléhá licenci Creative Commons Uveďte autora-Neužívejte dílo komerčně-Nezasahujte do díla 3.0 Česká republika, pokud není uvedeno jinak nebo nejde-li o tiskové zprávy.



WebArchiv - archiv českého webu



Tyto webové stránky používají k poskytování služeb, personalizaci reklam a analýze návštěvnosti soubory cookie. Informace o tom, jak tyto webové stránky používáte, jsou sdíleny se společností Google. Používáním těchto webových stránek souhlasíte s použitím souborů cookie.