Co se stane, když přestanete psát nepořádek v JavaScriptu

Z Mazovia

Když rostlina po pár měsících slábne, není to selhání. Bylinky mají přirozený cyklus a v interiéru jim chybí sezónní změny. Namnožte řízky včas, než původní rostlina odejde, ať máte vždy čerstvou zásobu. Tři zdravé květináče na správném místě vydrží déle než deset druhů na špatném.

Čtvrtý návyk: nikdy neopakujte stejný kód na více místech. Zkopírovaný blok se při opravě zapomene upravit jinde a vznikne chyba, která se projeví jen v některých případech. Když se stejná logika objeví potřetí, přesuňte ji do funkce nebo konstanty. Stejně tak držte konfiguraci na jednom místě — rozeseté hodnoty v celém projektu se ladí obzvlášť špatně.

Poslední krok je převzetí. Prohlédněte si těsnění, zkuste otevřít a zavřít každý rám, zkontrolujte odtok vody a to, zda někde nedochází k zatékání. Reklamace se řeší mnohem snáz, když je vše zdokumentované hned při předání. Když tyto kroky projdete předem, vyhnete se nejdražším opravám i zbytečnému zklamání.

První a nejdůležitější pravidlo: květináč musí mít ve dně alespoň jednu díru, kterou přebytečná voda odteče. Dekorativní obal bez otvoru funguje jen jako stojan – rostlina v něm nesmí stát nastálo. Pokud ji tam ponecháte, voda se hromadí u dna, kořeny začnou uhnívat a rostlina se zhroutí, i když jste zalévali „jen trochu". Řešení je jednoduché: vložte plastový květináč s dírou do obalu a po zalití vylijte vodu, která vytekla. Stejně špatné je dno květináče vysypat vrstvou kamínků „pro drenáž" – voda se v ní zadrží výš, blíž kořenům, což uškodí víc než pomůže.

Využijte výšku, ne podla

Druhý častý omyl je příliš velký květináč. Nenáročné pokojovky rostou pomalu a v přemokřeném objemu substrátu se kořeny nedokážou vypořádat s vlhkostí. Vyberte nádobu jen o dva až tři centimetry větší v průměru, než je kořenový bal. Materiál tolik neřešte – terakota lépe dýchá, plast lépe drží vláhu. Podstatné je, aby rostlina v květináči seděla a neklátila se.

Většina času při ladění nejde na složité chyby v logice, ale na chyby, které vznikly zbytečně. Přejmenovaná proměnná, zapomenutý návrat, funkce, která dělá pět věcí najednou. Čistý kód není estetika pro estéty, je to prevence. Následujících pět návyků zkracuje ladění z hodin na minuty.

Pátý návyk: pište komentáře k rozhodnutím, ne k syntaxi. // zvýšíme o jedničku nemá cenu, ale // API vrací data v jiném pořadí, proto řadíme ručně ušetří hodiny. Komentář má vysvětlit proč, ne co. Když kód potřebuje komentář k tomu, co dělá, je pravděpodobně příliš složitý.

Třetí návyk: používejte konzistentní styl a nástroje. Prettier a ESLint nejsou zbytečnost, ale zachytí chyby dřív, než je začnete hledat. Zapněte si kontrolu rovnosti (=== místo ==), zákaz nepoužitých proměnných a upozornění na chybějící await. Právě zapomenutý await je klasika: funkce vrátí Promise, vy s ním pracujete jako s hodnotou, a výsledek je undefined. Linter to odhalí okamžitě, vy nebudete hodinu hledat, proč data chybí.

Malé funkce a jediná odpovědnost Druhý návyk: držte funkce krátké a s jedním úkolem. Funkce, která načítá data, validuje je, ukládá a ještě vykresluje, se ladí nejhůř, protože nevíte, která část selhala. Rozdělte ji na nactiData(), validujData(), ulozData(). Každou pak otestujete samostatně. Typická chyba je předávat příliš mnoho parametrů — jakmile jich je víc než tři, zvažte objekt. A pozor na vedlejší efekty: funkce, která mění stav mimo sebe, je zdrojem nepředvídatelných chyb.

První návyk: pojmenovávejte věci tak, aby se daly přečíst nahlas. const d = new Date() nikomu nic neřekne, const datumObjednavky = new Date() ano. Platí to i pro funkce: zpracuj(data) je slabé, vypocitejCenuSVatou(data) je jasné. Když po půl roce otevřete soubor, nemusíte znovu zjišťovat, co která zkratka znamená. Vyhněte se i příliš dlouhým názvům, které jen opisují implementaci — název má říkat, co funkce dělá, ne jak to dělá.