Co všechno už s počítačem umíš a co o nich víš? Máš představu jak se programování vlastně provádí?
Pro úplný začátek, pochopení jaké možnosti v programovacích jazycích máš a jak se v nich dá vyjádřit požadovaná činnost, je vhodný
Karel, můžeš si ho
spustit přímo v prohlížeči a hrát si. Naučí tě základům strukturovaného programování a algoritmizaci, a přitom se nemusíš učit jediné cizí slovo, vše je v češtině. Příklad:
Kód: Vybrat vše
ČTYŘLÍSTEK
OPAKUJ 5-KRÁT
KROK
KONEC
VLEVO-VBOK
OPAKUJ 5-KRÁT
POLOŽ
POLOŽ
KROK
KONEC
OPAKUJ 4-KRÁT
OPAKUJ 4-KRÁT
OPAKUJ 3-KRÁT
POLOŽ
POLOŽ
KROK
KONEC
VLEVO-VBOK
KONEC
VLEVO-VBOK
KONEC
DOKUD NENÍ ZÁPAD
VLEVO-VBOK
KONEC
OPAKUJ 2-KRÁT
DOKUD NENÍ ZEĎ
KROK
KONEC
VLEVO-VBOK
KONEC
KONEC
Karel dokáže řešit spoustu problémů, například procházet bludištěm, předvádět akrobacii, postavit si domeček, ale také počítat s čísly, i když se mu na první pohled nedají nikam zadat. Je to vlastně taková kombinace hlavolamu a docela zábavné hry.
V historii vznikla řada podobných platforem, například
Logo,
Alice,
Scratch, nebo komerční
Baltík, je možné si vybrat.
Mezitím se hodí podívat se na principy fungování počítačů, a pokusit se pochopit jak funguje dvojková soustava a jak jsou v počítači kódována čísla a znaky.
Až budeš chápat takové věci jako jsou cykly, podmíněné větvení, rekurze a dělení na podprogramy, což je s Karlem otázka několika týdnů, je čas přejít ke skutečnému programovacímu jazyku.
Za třičtvrtě století vývoje počítačů vznikly stovky programovacích jazyků, a desítky z nich se více rozšířily, přičemž naprostá většina dnes používaných má prapůvod v jazyce Algol, jednom z prvních jazyků které na konci padesátých let minulého století vznikly.
V dávných dobách minipočítačů a osmibitových mikropočítačů byl králem programovacích jazyků
BASIC ve stovkách nejrůznějších dialektů, byl součástí každého počítače (včetně lepších kalkulaček) a daly se v něm velmi jednoduše psát jednoduché programy. S důrazem na to "psát programy", protože o skutečné programování se v něm pokoušet nedalo.
To bohužel platí i pro jeho dnešní nástupce jako je VisualBasic a SmallBasic.
Speciálně pro výuku programování byl vytvořen jazyk
Pascal, dodnes pro tento účel používaný na některých školách (i univerzitách). Jeho výhodou je obrovské množství ukázkových programů které se dají najít na netu i v mnoha učebnicích. Opět příklad:
Kód: Vybrat vše
{nalezeni nejvetsiho spolecneho delitele}
program delitel(input,output);
var x,y:integer;
begin
write('Zadej dve cisla oddelena mezerou: ');
read(x,y);
while (x<>y) do
begin
if (x>y) then
begin
x:=x-y;
end
else
begin
y:=y-x;
end
end;
writeln('Nejvetsi spolecny delitel je ',x);
end.
Tady už tě pár cizích slov nemine, ale není to tak hrozné, Pascal je poměrně jednoduchý a kvůli svému školnímu určení má řadu výhod, které začátečníkovi ušetří hodně trápení. Hlídá totiž kdejakou ptákovinu během překladu i při běhu zkompilovaného programu, takže ti za všechny chyby okamžitě nafackuje, občas dokonce napoví jak je řešit, zatímco v "ostrém" jazyce jako je
C za tebe program neudělá vůbec nic a nechá tě pěkně si rozbít hubu o zeď.
Velkou výhodou Pascalu ja také možnost stažení vývojového prostředí (Turbo Pascal) s kompilátorem zdarma.
Pascal je už čtyřicet roků starý, takže je to na dnešní poměry trochu vykopávka, i když pořád velmi užitečná. Vychází z něj moderní objektový jazyk
Delphi, který umožňuje psaní graficky ovládaných programů pro Windows.
Jiná možnost jak začít s objektově orientovaným programováním je
Python, také poměrně jednoduchý a docela vhodný pro začátečníky. Je také k dispozici zdarma, včetně zdrojových kódů interpretu a také je možné na netu najít dost příkladů, návodů a tutoriálů (kolísavé kvality).
Tady bys měl mít zvládnutou práci s různými typy proměnných, s pamětí, předávání parametrů procedurám a funkcím i předávání jejich návratových hodnot, práci se soubory a spoustu dalších věcí.
Další krok by mohl být některý z těch ostrých jazyků, jako jsou
nízkoúrovňový C vytvořený pro psaní operačních systémů, velmi těžký a obsáhlý
C++ který z něj vychází, interpretovaná
Java která podle nejnovějších poznatků trvale deformuje (jako kdysi BASIC) programátorské myšlení nebo z Javy odvozený
C#.
Pár dalších příkladů - například
PHP je určený k vytváření dynamických webových stránek,
Prolog pro umělou inteligenci,
Cobol pro hromadné zpracování dat...
Ale pokud ti jde jen o to rychle a jednoduchým způsobem vytvářet hry, podívej se na
GameMaker.
P.S. Když tak koukám na tvůj nick, tak mě napadl ještě jeden ukázkový program v tom BASICu:
Kód: Vybrat vše
10 LET f=1
20 FOR i=2 TO 9
30 LET f=f*i
40 NEXT i
50 PRINT "9!=";f
60 END
Hádej co spočítá a napíše po zadání příkazu RUN