5 pravidel, jak udržet Redux v Reactu čitelný a rychlý

Aus Rettungsdienst-Wiki
Zur Navigation springen Zur Suche springen

Dávejte pozor na tichý zdroj chyb: porovnávání. Operátor == převádí typy a občas vrátí výsledek, který nikdo nečekal. Používejte === a !==, dokud k tomu nemáte skutečný důvod. Stejně tak var dnes nemá v běžném kódu co dělat; použijte const, a když hodnotu měníte, let. Zamezíte tím mnoha chybám, které vznikají kvůli chování rozsahu platnosti.

Konzistence je další zásadní věc. Pokud se tlačítko „Uložit" chová na jedné obrazovce jinak než na druhé, uživatel ztrácí důvěru. Vytvořte si jednoduchý styl: barvy pro akce, velikosti písma pro nadpisy a tělo, jednotné rozestupy. Nemusíte mít designérský systém, stačí pár pravidel, která dodržíte. Vývojáři často podceňují čitelnost. Malý font, slabý kontrast nebo dlouhé řádky bez odsazení způsobují únavu. Stačí zvětšit písmo na 16 px a omezit šířku textu na 60–70 znaků.

Postavit REST API v Node.js jde dvěma cestami: použít vestavěný modul http, nebo sáhnout po Expressu. Rozdíl není v tom, co je „modernější", ale v tom, kolik práce chcete řešit ručně. Holý Node.js zvládne všechno, co Express umí, jenže za cenu vlastního kódu pro routování, parsování těla požadavku, hlaviček a zpracování chyb. Express tyto vrstvy dodává hotové a nechává prostor na logiku aplikace.

Ať zvolíte cokoli, držte se několika zásad. Trasy čleňte podle zdrojů, ne podle akcí, a verzi API uvádějte v cestě. Odpovědi posílejte ve stejném tvaru, ideálně s daty a chybovou částí odděleně. Logování a zpracování chyb nastavte hned na začátku, ne až po prvním incidentu. A pamatujte, že Express je jen tenká vrstva – bezpečnost, validace a práce s databází zůstávají na vás.

Kde začátečníci nejčastěji klopýtnou První častá chyba je chybějící kontrola vstupu. Express sám o sobě nic nevaliduje, takže data z těla požadavku musí projít ověřením dřív, než se dostanou do databáze. Druhá chyba je ignorování asynchronních chyb: pokud v async handleru vyhodíte výjimku a nezavoláte next(err), požadavek zůstane viset a klient čeká do timeoutu. Řešením je obalovací funkce nebo knihovna, která výjimky předá dál. Třetí chyba je návratové kódy – vracet 200 i při neúspěchu mate klienty i monitorovací nástroje.

U čistého Node.js narazíte na stejné problémy, jen dřív. Musíte ručně rozlišit metodu a cestu, načíst tělo po částech, ošetřit maximální velikost a sestavit odpověď včetně hlaviček. Výhodou je menší závislost a jasná představa o tom, co se v aplikaci děje. Nevýhodou je, že každý nový endpoint znamená další kód, který se snadno zvrhne v nepořádek. Express tuto režii odstraňuje a drží strukturu čitelnou i při desítkách tras.

Čistý kód v JavaScriptu nepoznáte podle toho, že funguje. Poznáte ho podle toho, že se v něm po půl roce vyznáte i vy sám. Nejčastější chyba, která čitelnost ničí, je nadměrné vnořování. Funkce, ve které je if uvnitř for uvnitř if uvnitř try, se čte jako rozbitý strojní překlad. Řešení je přitom jednoduché: místo dalšího odsazení použijte návrat předčasně. Když platí okrajová podmínka, funkci ukončete hned na začátku. Zbytek těla pak zůstane v jedné rovině a čte se shora dolů.

Poslední věc je práce s daty. Nepoužívej globální proměnné, pokud to není nutné. Předávej hodnoty parametrem nebo je drž v uzavřeném rozsahu. U polí a objektů dávej pozor na sdílené reference — když jedno místo v kódu změní objekt, změní se i jinde. Čistý kód se pozná tak, že změna na jednom místě nevyvolá překvapení na druhém. To je celý cíl, nic víc za tím nehledej.

Začátek s Expressem je krátký. Vytvoříte instanci aplikace, zaregistrujete middleware pro JSON a definujete trasy metodami get, post, put a delete. Middleware je klíčový pojem: funkce, která dostane požadavek, odpověď a funkci next. Pořadí registrace určuje pořadí zpracování, takže obecné middlewary patří nahoru a zpracování chyb dolů. Kdo si toto neohlídá, stráví hodiny hledáním, proč se mu trasa nikdy nezavolá.

Nakonec konzistence. Formátování, středníky, uvozovky, pořadí importů – to vše by mělo být stejné v celém projektu. Nemá cenu dohadovat, kdo má pravdu; nastavte jeden nástroj na formátování a nechte ho rozhodovat. Kód, který se neformátuje ručně, se čte výrazně lépe a v recenzích se pak řeší logika, ne mezery. Čistý kód není otázka vkusu, ale disciplíny, kterou oceníte především ve chvíli, kdy do něj budete muset sáhnout po delší době.

Druhá věc, která rozhoduje o všem ostatním, je pojmenování. Proměnná s názvem data nebo temp neříká nic a za týden ji budete dohledávat podle toho, kde se používá. Pište názvy tak, aby věta „vypočítej celkovou cenu včetně daně" byla z kódu čitelná bez komentáře. U funkcí používejte sloveso a předmět: spocitejCenu, nactiUzivatele, zvalidujEmail. U booleanů tvar otázky: jePrihlaseny, maOpravneni. Vyhněte se zkratkám, kterým rozumíte jen vy v den psaní.