Když vás bolí záda ze sedačky, zkontrolujte výplň a sklon
Věnujte pozornost ceně a celkovému dojmu z nabídky. Podvodné e-shopy lákají na extrémně nízké ceny, které jsou hluboko pod běžnou úrovní. Zároveň nemají skladem, ale „dodání do dvou dnů" slibují u všeho. Častý trik je i to, že web vypadá jako známý obchod, ale v adresním řádku je jiná koncovka nebo záměna písmen. Vždy si adresu přečtěte znak po znaku, ne jen letmo. Rozdíl mezi písmenem „l" a číslicí „1" nebo „rn" a „m" je přesně to, na co útočníci spoléhají.
Drenáž v květináči není detail. Vrstva keramzitu nebo hrubého písku na dně zabrání tomu, aby kořeny stály ve vodě. Stejně důležité je proudění vzduchu: rostliny naskládané těsně vedle sebe na malém parapetu se rychle stanou líhní plísní a škůdců. Nechte mezi květináči mezeru na prst a jednou za čas je otočte, aby rostly rovnoměrně za světlem. Pokud se objeví molice nebo mšice, izolujte postiženou rostlinu a opláchněte listy slabým proudem vody.
Bolest zad po delším sezení na sedačce nebývá náhoda. Často ji způsobí ztráta podpory, ke které dochází plíživě. Výplň sedáku se časem stlačí, pěna ztratí pružnost a opěrná konstrukce povolí. Tělo se pak snaží sedět jinak, než je zvyklé, a přetěžuje bederní oblast i meziobratlové ploténky. Pokud vás bolí záda jen doma a v práci na židli ne, je sedačka prvním podezřelým.
Třetí návyk: předávejte data, ne stav. Funkce, která sahá na globální proměnnou nebo na this z vnějšího rozsahu, se ladí obtížně, protože její výsledek závisí na něčem, co v místě volání nevidíte. Pokud hodnotu potřebujete, předejte ji jako parametr a vraťte výsledek pomocí return. Vyhnete se tak typické chybě, kdy se proměnná změní na jednom místě a rozbije to úplně jinde.
První návyk: pojmenovávejte věci podle toho, co dělají, ne jak vypadají. data, vysledek nebo tmp vám za týden nic neřeknou. seznamFaktur, pocetPokusu, jePrihlasen ano. Platí to i pro funkce: pokud název obsahuje spojku „a" (nactiAOver), funkce dělá toho moc a měla by se rozdělit. Při ladění pak nemusíte číst celé tělo funkce, abyste zjistili, co se v ní děje.
Bylinky potřebují šest až osm hodin skutečného světla denně. Na severním okně to bez přisvětlení nejde, na jižním zase v létě hrozí spálení. Kompromisem je východní nebo západní okno a v zimě doplňkové světlo umístěné dvacet až třicet centimetrů nad rostlinami, svítící deset až dvanáct hodin. Zalévejte až ve chvíli, kdy je povrch substrátu na dotek suchý, ale ne hluboko proschlý. Trvalé přemokření je častější chyba než opomenutá zálivka a projevuje se žloutnutím listů a plísní na povrchu půdy.
Prostor u sprchového koutu bývá v koupelně nejvíc přehlížený. Většina lidí ho buď nechá prázdný, nebo tam naskládá věci, které tam nepatří, a pak se diví, že se v koupelně nedá otočit. Přitom stačí pár promyšlených úprav a získáte místo na ručníky, kosmetiku i úklidové potřeby, aniž byste cokoli bourali.
Většina času u ladění nejde na složité logické chyby. Jde na drobnosti, které jste přehlédli při psaní: chybějící závorka, proměnná ve špatném rozsahu platnosti, funkce, která dělá tři věci najednou. Čistý kód není estetika. Je to praktický nástroj, jak se k chybě dostat rychleji, protože v přehledném kódu ji uvidíte dřív, než ji začnete hledat.
Žádný z těchto návyků není o délce kódu ani o stylu. Je o tom, že každá nejasnost vás při ladění stojí čas. Čím méně nejasností v kódu necháte, tím dřív narazíte na skutečnou příčinu místo na její stín.
Pátý návyk: logujte smysluplně a konzistentně. Místo console.log(x) pište console.log('pocetPokusu', pocetPokusu), abyste v konzoli věděli, co která hodnota znamená. Před commitem tyto výpisy odstraňte nebo použijte úrovně console.debug. A ještě jedna věc: nikdy nepolykejte chyby prázdným catch. Prázdný blok catch (e) {} je místo, kde chyba zmizí a vy pak hodiny hledáte, proč se něco nespustilo.
Čtvrtý návyk: kontrolujte vstupy na hranici, ne uvnitř logiky. Když funkce očekává číslo, ověřte to hned na začátku a při neplatné hodnotě skončete (return nebo vyhození chyby). Vnitřek tak může předpokládat, že data jsou v pořádku, a nemusíte psát obranné podmínky do každého kroku. Častá chyba je opak: ošetřovat null až hluboko uvnitř výpočtu, kde už je těžké zjistit, odkud se vzal.
Malé funkce a krátké bloky Druhý návyk: držte funkce krátké, ideálně do dvaceti řádků, a každou větev if na pár řádcích. Dlouhá funkce s pěti úrovněmi vnoření je místo, kde se chyby schovávají nejraději. Když blok naroste, vytáhněte jeho obsah do samostatné funkce s výstižným názvem. Získáte dvě věci: kód půjde číst po částech a do ladění můžete vstoupit přesně v místě, kde tušíte problém, místo abyste procházeli celý strom.