Co je to porozumění programu?
Pochopení programu je schopnost programátora pochopit, co dělá zdrojový kód počítačového programu. Při výuce informatiky se porozumění programu často přehlíží ve prospěch učení mechaniky a syntaxe vyučovaného počítačového jazyka. Psaní srozumitelného kódu je však univerzální potřebou, bez ohledu na počítačový jazyk, ve kterém je napsán. Pokud programátor zapíše knihovnu nebo část kódu, ale nikdo nemůže určit, co dělá poté, algoritmus a logika za tímto kódem lze snadno ztratit. Je stále běžnější, že programátoři nemohou dešifrovat svůj vlastní kód, protože to často není napsáno jasně a intuitivně.
Existují dvě hlavní strategie, které mohou programátoři použít ke zlepšení porozumění programu, a každá z nich má své výhody a nevýhody. První metoda je přidat dokumentaci k kódu během nebo po vytvoření kódu a druhou je napsat kód s důrazem na jeho strukturu. Kombinace obou přístupů je užitečná pro většinu programátorů, ačkoli existují někteří tvůrci kódů, kteří dávají přednost jedné strategii před druhou. Která metoda se používá, je věcí osobního preference programátora a jakýkoli pokus o vyjasnění kódu je mnohem lepší než vůbec žádný.
Přidání dokumentace do kódu je jednodušší z těchto dvou metod, a když se to povede dobře, může to být velmi užitečná berle pro programátora, který nezná jazyk, v němž je kód napsán. Většina počítačových jazyků má specifický styl dokumentace, který pomáhá při porozumění programu. Pokud je dokumentace kódu napsána důkladně, prvním krokem nového programátora může být přečtení veškeré dokumentace a komentářů, aby bylo možné porozumět tomu, jak program funguje, aniž by se kód vůbec přečetl. Namísto toho, aby byl programátor závislý na syntaxi a mechanice kódu, může vidět, co se děje v prostém textu, a pak text propojit s přesně tím, co se děje na jakémkoli daném místě. Při přidávání dokumentace do kódu však musí být programátoři opatrní, protože příliš mnoho dokumentace může být spíše matoucí a rušivé, než užitečné.
Při psaní kódu s důrazem na strukturu programátor předpokládá, že všichni ostatní správci, kteří se dívají na jeho kód, budou mít stejnou znalost syntaxe a mechaniky jazyka. Někdy je to platný předpoklad, ale nelze se na něj vždy spolehnout. Je možné porozumět programům, které jsou do značné míry založeny na struktuře, ale jeho zjednodušení vyžaduje mnohem více práce ze strany původního programátora. Musí být přesně dodržována mechanika a syntaxe jazyka, stejně jako všechny stylistické konvence a vše musí být konzistentní. Při psaní kódu tímto způsobem si musí programátor vždy uvědomit, že to, co je mu jasné, nemusí být jasné jiné osobě.
I když píšete kód s okem pro pozdější pochopení programu, může být později potřeba další dokumentace nebo strukturální úpravy. Jedná se o přirozenou součást údržby kódu, nikoli o selhání v rukou programátora. Úkolem programátora je předvídat co nejvíce problémů s porozuměním, ale ne všechny jsou vždy chyceny.