#9 Atheo
Chjo, zase ta "Typická školní chyba" - první hodina programování "Tak copak je to algoritmus?" - tu definici člověk nemusí vědět, aby mohl programovat. To je jako na prvnáčka v matematice vybalit "Copak je to číslo a copak jsou množiny čísel" Dokáže počítat bez této znalosti. A až dospěje do určitého stádia, tak se mu teprve vysvětlí, cože ta čísla jsou apod.
Stejně to vidím s programováním - musíš psát, zkoušet a pokud možno co nejefektněji - tzn. aby co nejdříve byly vidět relativně smysluplné výsledky. Je to jednak motivační a také člověk dostane co nejvíce praxe, je schopen se orientovat.
Neříkám, aby člověk začal hned s hrami. Ale myslím si, že po půl roce takového oťukávání je již schopen něco lehkého, funkčního spáchat. Něco, co nebude absolutně hratelné, možná to ani nedotáhne do konce, ale něco to bude.
Má osobní zkušenost - sám jsem se takto motivoval. A skutečně cca po 3/4 roce jsem spáchal pomocí SDL a C++ (ano, tohle není pro začátečníka nejlepší kombinace, ale...) arkanoid s jednou úrovní - bez předchozích programovacíh zkušeností, znalostí. To mi mohlo být tak 13-14. Byl to prasácký kód, ale naučil mě toho mnohem více než kdejaká bichle. Díky tomu mi do krvě přešly některé základy, navíc jsem se naučil testovat kód. A pochopil jsem rozdíl mezi teorií a praxí. A na základě tohoto jsem byl schopen pročítat knížky a podchytit spoustu další teorie, bez které bych se nyní neobešel. Ale kdybych se měl prvně naučit tu teorii, tak bych u programování asi nikdy nevydržel - dle mě by programování mělo být o black boxingu - stačí vědět, jak se to používá, není nutné vědět jak to dopodrobna funguje. To si zjistím, až potřebuji.
A proto doporučuji knihu Rozumíme C++ - od začátku používá STL a po prvních pěti kapitolách je člověk na úrovni "když napíšu tohle, tak to udělá tamto." - ale naprostonetuší, "co se skrývá pod kapotou". Pracuje s tím jako se stavebnicí a je schopen vytvořit program, který skutečně něco dělá. A až když pochopí, jak se to používá,tak je mu vysvětleno, jak to funguje a snáze to pochopí. Nechápej mě špatně - musí nastat určtý zlom, kdy jsou ty základy vysvětleny - jinak se člověk zasekne na stavu "Javovského lepiče kódu"