Diskuze: Hledám někoho kdy by byl ochoten za úplatu mě naučit myslet programátorsky.
Zobrazeno 6 zpráv z 6.
Pokus te to zajima osobne a ne do skoly, tak nejlepsi je zkusit si splnit
pozadavky. Stanovit si, co si chces naprogramovat. Treba pro zacatek vypsat
nejaky text, spocitat matematicky vzorecek, jednoduchou hru, treba pexeso,
minolov. A pod. A pozdeji se dostanes k tomu, jak by se to melo spravneji
programovat a ne to zplacat, jak to zplacaly pro nejake priklady na netu.
Ja treba pro javascript zacal tim, ze jsem si stahl hru a udelal v ni zmeny.
Souhlasím s Peter Mlich. "Myslet programátorsky" se
musíš naučit sám. Například výborným a jednoduchým příkladem je
napsat třeba kalkulačku. Nezdá se, ale je tam třeba řešit plno věcí,
které ve finále nejsou až tak triviální. Například správná limitace
čísel, perioda atd - pokud nepoužiješ nějakou hotovou komponentu. Můžeš
začít s jednoduchou formulářovou a pak udělat třeba tlačítkovou s
mocninami a procenty. Nebo takový tetris není zrovna nejjednodušší
správně napsat Důležitý
je dobrý návrh aplikace - dopředu vědět, co a kde bude třeba řešit a
samozřejmě syntaxe jazyku, jak tohle zvládneš, tak jsi v pohodě. Na zbytek
je dokumentace.
No, jde spíš o to, najít si vlastní cestu. Každý máme jiné uvažování, rychlost učení se a hlavně získávání zkušeností. Například uděláš si návrh aplikace a při programování samotném narazíš na problém, se kterým jsi v návrhu nepočítal = získáš tím zkušenosti a příště už budeš vědět dopředu, co je třeba ještě udělat. Takhle to jde pořád dál a dál. Programování je v podstatě o hledání elegantního a efektivního řešení jednotlivých problémů.
Programátorsky myslet neznamená nic jiného než hledat možnosti a nacházet v nich řešení.
Tím hlavním je dokázat si vše vůbec představit. Není ostudou si na začátku vše poznamenávat, později se naučíš většinu toho zpracovávat v hlavě. Poté, co budeš mít jakousi představu, je třeba analyzovat závislosti. Tedy vědět, co k tomu budeš potřebovat a znát. Určit si vstupní a výstupní data, umět si rozdělit celou úlohu na jednotlivé kousky a postupně je skládat dohromady. Podstatné je rovněž vědět, jaká data mají být kterého typu, jakých hodnot konkrétních, minimálních a maximálních mohou nabývat.
Je dobré mít alespoň základní ponětí o tom, co nástroj, který chceš pro zrealizování úlohy použít, nabízí. Čím více toho budeš znát, tím více způsobů se Ti bude nabízet. Budeš vědět jaké jsou limity, co se stane když něco uděláš a naopak když něco neuděláš. Logické uvažování se oproti realitě neliší, tak toho využij a nehledej v tom žádnou složitost.
Celé se to dělí na dvě hlavní části - Představa a realizace. Měl by si v tom vidět podobnost s hledáním možností a nacházení řešení. Pro řešení je nezbytná znalost jazyka. Ta ti ale rovněž může pomoci při hledání možností. Jak? Znalost jazyka Ti umožňuje znát mnoho pojmů a díky tomu si můžeš dohledat různé informace. Stejně jako znát limity jazyka, vědět na co si dát pozor, najít lepší řešení a možnost číst cizí kódy a vytahovat si z nich způsoby, jak to dotyčný řešil. Zde pak můžeš popřemýšlet nad tím, zda existuje další způsob, který by byl lepší. Pokud ovšem začínáš, lze toto vynechat a soustředit se jen na hledání možností.
Nejlepší způsob jak se naučit programátorsky myslet je naučit se vytvářet představy. Čím více dokážeš izolovat a soustředit se na daný problém, tím lépe. Pro představu názorný příklad:
Máš deset kartiček, na kterých je napsán nějaký znak. Zapřemýšlej nad tím co vše by se s tím dalo dělat. Tím si začneš vytvářet představy a hledat tak možnosti. tedy např.
To je jen krátký soupis toho co lze dělat. Zkus vymyslet další možnosti a to, jak by se to asi dalo řešit. Vše je logické. I na malém programu se lze naučit spoustu dovedností a postupně si zvyšovat obtížnost. Neustále hledej možnosti, piš si krátké programy, později čti cizí které analyzuj a třeba modifikuj. Když za sebou uvidíš výsledky, bude to motivace do tvé další činnosti a fajn pocit, že díky tomu dokážeš cokoli vyřešit, bude pro tebe skutečností.
Zobrazeno 6 zpráv z 6.