Small Basic a Kodu - programování v začátcích
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Small Basic a Kodu - programování v začátcíchSmall Basic a Kodu - programování v začátcích

 

Small Basic a Kodu - programování v začátcích

Google       28. 4. 2010       43 297×

Na fórech velmi často probíhají diskuze, které uvozuje stejná otázka: „V čem začít s programováním?“ Tazatel tím většinou nemyslí, jaký oděv zvolit nebo do které místnosti se přesunout, ale který jazyk a spolu s ním vývojové prostředí si vybrat, když pojal ten spásný nápad, že se bude učit tvořit software.

A co třeba děti? Přemýšleli jste někdy nad tím, zda a v čem budete učit své děti magii programování? Asi je neposadíte okamžitě před Visual Studio s milionstránkovou bichlí „C# - průvodce programátora“ a nebudete počítat s tím, že se to „nějak“ naučí. Však si vzpomeňte, jak jste začínali vy – BASIC, Baltík, Karel, Pascal? Nic z toho již dnes není příliš použitelné a i kdyby, nejsou to jazyky a technologie zrovna nejčerstvější. Podobnou myšlenkou se zabývá i Microsoft ve svých divizích DevLabs a Fuse Labs. Pojďme se podívat na dva produkty, které přibližují tvorbu software začátečníkům dvěma odlišnými způsoby – psaním zdrojového kódu (Small Basic) a sestavováním komponent (Kodu).

Small Basic

Existuje milion a jeden dialekt jazyka BASIC. Je velmi pravděpodobné, že i vy jste s ním někdy přišli do styku. Nejnovější Visual Basic.NET od společnosti Microsoft funguje plně na objektovém modelu, obsahuje lambda výrazy, testy jednotek, prvky syntaxe z kategorie „ninja black belt“ apod. Když se tohle všechno vyvalí na začátečníka, dokáže mu to pěkně zamotat hlavu. Proto vznikla jakási odlehčená verze, která je založená na .NET, ale neobsahuje více než 15 klíčových slov.

Vijaye Raji na blogu věnovaném Small Basicu píše, jak v anketě pořádané na půdě Microsoftu vyšlo najevo, že většina interních vývojářů se učila programovat v některé z variant jazyka BASIC. Měl všechny vlastnosti správného jazyka pro začátečníky: jednoduchý, minimum formalit a okamžitě viditelné výsledky. Vijaye píše: „Když jsem se jich zeptal, jak mají v úmyslu učit své děti programovat, byli v koncích. Skoro všichni to chtěli, jenom nevěděli jak.

"Když jsem se zeptal vývojářů v Microsoftu, jak mají v úmyslu učit své děti programovat, skoro všichni to chtěli, jenom nevěděli jak." - Vijaye Raji

Small Basic nedávno opustil Microsoft DevLabs a stal se plně podporovaným produktem, přesto je teprve ve verzi 0.8 a stále se vyvíjí. Jazyk je netypový (interně používá pro proměnné „svůj“ datový typ Primitive) a všechny proměnné jsou automaticky inicializované a vždy globální. Je možné využívat sadu vestavěných objektů (konzolové okno, grafické okno, práce s textem, objekt želva a další...), ale přímo ve Small Basicu se nedají vytvářet vlastní. Jak asi tušíte, jde to jinde – v jakémkoliv vyšším jazyce .NET stačí vytvořit knihovnu DLL, která bude splňovat požadavky pro použití ve Small Basicu (všechny typy statické, vlastnosti typu Primitive z knihovny Microsoft.SmallBasic, události typu SmallBasicCallback atd.). Takový soubor pak stačí jen vložit do složky lib a prostředí ji automaticky načte.

Syntaxe jazyka je pochopitelně „Basic-like“ – nechybí klasické příkazy cyklu, možnost vytvářet vlastní procedury (Sub) a dokonce pracovat s událostmi. Jednoduchý program, který vykreslí modré kolečko všude tam, kam uživatel klikne, by vypadal takto:

GraphicsWindow.BrushColor = "Blue"
GraphicsWindow.MouseDown = OnMouseDown
Sub OnMouseDown
	x = GraphicsWindow.MouseX - 10
	y = GraphicsWindow.MouseY - 10
	GraphicsWindow.FillEllipse(x, y, 20, 20)
EndSub

Prostředí samotné rozhodně není klasické robustní IDE, jako Visual Studio nebo NetBeans, sestává totiž z jediného okna. Obrázek ukazuje víceméně vše, co máme k dispozici: horní příkazovou lištu ve stylu Ribbon (všimněte si, že zatím chybí tlačítko pro nápovědu nebo informace o programu), okno pro psaní kódu a panel vpravo ukazující doplňující informace (pozici v kódu, případně nápovědu k metodě).

Z obrázku je také patrné, jaké má prostředí charakteristiky:

  • číslování řádků
  • barvení syntaxe
  • IntelliSense (alias návykový našeptávač)
  • podpora českých znaků
  • spuštění programu pomocí klasického F5
  • import cizího programu (z oficiálního webu na základě jeho identifikátoru)
  • export na web (vytvoří z programu aplikaci technologie Silverlight, kterou je pak možné hostovat na svém webu)

Začátečník se tak seznamuje s prvky, které bude při přechodu na vyšší jazyk a prostředí již důvěrně znát. Přechod je usnadněn tlačítkem „Graduate“, které zkonvertuje program ve Small Basicu na projekt Visual Basic.NET (připojí k němu svou knihovnu a takový program je pak okamžitě spustitelný ve Visual Studiu).

Ve Small Basicu lze vytvářet i docela komplexní hry (díky objektu GraphicsWindow) a šířit je přes export a Silverlight. Navíc kolem něj existuje aktivní komunita produkující nové a nové aplikace a přídavky.

Odkazy:

Kodu

Zcela jiný pohled na tvorbu než Small Basic má Kodu – přináší vizuální programování pomocí ikon a definice činností (stejný princip používal například kdysi jazyk Petr nebo v současnosti Game Maker). Původně výzkumný projekt určený výhradně pro konzoli Xbox je nyní k dispozici zdarma i pro Windows (Technical Preview).

Jazyk je zaměřený na tvorbu jednoduchých her a sám jednou takovou hrou je – pomocí ovladače (gamepadu nebo myši a klávesnice) se pohybujeme ve 3D prostředí a definujeme podmínky a akce, které jim budou následovat. Vše ilustrováno barevnými ikonami a líbivými animacemi.

Cílem bylo naučit děti základní koncepty programování počítačů skládáním příkazů typu: „když uvidíš červené jablko, rozjeď se rychle za ním“. Součástí je několik předem připravených světů s možností tvořit vlastní, sdílet je s ostatními na bázi peer-to-peer (další uživatelé musí být tedy online, aby mohli mapu přijmout) a také dvacet různých postaviček, které se dají ovládat. Není tak problém vytvořit například závodní okruh a umělou inteligenci, která bude soupeřit s hráčem.

To je vlastně vše, co se dá obecně ke Kodu napsat. Obrázky okolo ukazují, jak vypadá tvorba; pokud vás projekt zaujme, podívejte se na blog vývojářů a různá doprovodná videa, kde jsou vidět i velmi zajímavé výsledky, kterých lze s Kodu dosáhnout.

PC verze vyžaduje silnější grafickou kartu, .NET Framework a XNA Framework. Instalátor si zkontroluje jejich přítomnost a případně nabídne stažení chybějících součástí. Přesné požadavky:

  • grafická karta s podporou DirectX 9.0c a Pixel Shader 2.0
  • .NET Framework 3.5
  • XNA Framework 3.1 Redistributable

A na konec několik odkazů:

(obrázky pocházejí z oficiálního webu a blogu Kodu)

Závěr

Cílem článku rozhodně není dát odpověď na základní Otázku všehomíra – „V čem se učit programovat?“ Pouze představil dva produkty určené pro začátečníky. Produkty, které by mohl někdo shledat zajímavými a využít je právě k výuce nebo prostě jen ke zvídavému experimentování.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

4 názory  —  4 nové  
Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Martin ŠimečekPracuje v českém Microsoftu a zaměřuje se na technologie pro vývojáře. Jeho denním chlebem je setkávání s vývojáři velkých i menších firem, startupy a jednotlivci. Kromě toho přednáší, nahrává videa, píše a programuje. A ještě je i korektor, knihomol, geocacher, gamer, plavec a cyklista.
Web     Twitter     LinkedIn    

Nové články

Obrázek ke článku Stavebnice umělé inteligence 1

Stavebnice umělé inteligence 1

Článek popisuje první část stavebnice umělé inteligence. Obsahuje lineární a plošnou optimalizaci.  Demo verzi je možné použít pro výuku i zájmovou činnost. Profesionální verze je určena pro vývojáře, kteří chtějí integrovat popsané moduly do svých systémů.

Obrázek ke článku Hybridní inteligentní systémy 2

Hybridní inteligentní systémy 2

V technické praxi využíváme často kombinaci různých disciplín umělé inteligence a klasických výpočtů. Takovým systémům říkáme hybridní systémy. V tomto článku se zmíním o určitém typu hybridního systému, který je užitečný ve velmi složitých výrobních procesech.

Obrázek ke článku Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Vedení týmu v oboru informačních technologií se nijak zvlášť neliší od jiných oborů. Přesto však IT manažeři čelí výzvě v podobě velmi rychlého rozvoje a tím i rostoucími nároky na své lidi. Udržet pozornost, motivaci a efektivitu týmu vyžaduje opravdu pevné manažerské základy a zároveň otevřenost a flexibilitu pro stále nové výzvy.

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý