Pokud vidíš tuto zprávu, znamená to, že máš problém s načítáním externích zdrojů na našich stránkách.

If you're behind a web filter, please make sure that the domains *.kastatic.org and *.kasandbox.org are unblocked.

Hlavní obsah

Další tipy pro odstraňování chyb

Hledat chyby, neboli debugovat, ve svém programu lze hned několika způsoby. Tady máme několik ukázek:
Logování chyb pomocí funkce print
Už jsme si ukazovali, že lze použít funkce print() nebo println(). Můžeš je vložit do svého kódu a zjistit tak například výstupní hodnoty funkcí. Výsledek uvidíš v konzoli, která se Ti ukáže pod vykreslovací obrazovkou. Kromě toho lze také použít funkci debug(), která udělá to samé a pošle to do JavaScriptové konsole tvého prohlížeče. Je tedy nutné jej umět otevřít.
Hledání chyb s kachničkou
Vedle počítače si postav gumovou kachničku - nebo cokoliv, co jí je alespoň trochu podobné - a vysvětli jí celý svůj kód, řádek po řádku. Je totiž přínosné si celý kód přeříkat nahlas, tím si často uvědomíme, co je špatně. Místo gumové kachničky můžeš poprosit svého kamaráda nebo učitele, který si na tebe udělá čas a vyslechne tě. Někdy ti mohou i poradit, ale stačí, když budou jen poslouchat tvé vysvětlení.
V Khan Academy máme taky jednu takovou gumovou kachničku (nebo alespoň něco jí podobného):
Přežeň zadané hodnoty
V rámci kurzu pracujeme s knihovnou ProcessingJS, která obsahuje spoustu vybarvování a kontur. Pokud něco vykreslím a nevidím to, je dobré to pořádně přehnat, abych pochopil, co se děje — například pomocí příkazu strokeWeight(30). Prostředí, ve kterém pracujeme, výsledek vykreslí okamžitě a navíc můžeme používat posouvátka čísel, proto je opravdu snadné čísla měnit a sledovat, co to udělá s výstupem. Může ti to například pomoci se zjištěním, kam se tvůj tvar poděl.
Je nesporně dobré znát všechny možnosti, jakými lze program debugovat. Díky tomu vždy můžeme použít tu, která se v dané situaci hodí nejvíce.

Chceš se zapojit do diskuze?

Zatím žádné příspěvky.
Umíš anglicky? Kliknutím zobrazíš diskuzi anglické verze Khan Academy.