4 zásady, díky kterým backend a frontend mluví stejně
Konzole slouží k rychlé kontrole hodnot. Zápis console.log(objekt) vypíše stav v okamžiku volání, ne odkaz na živý objekt. To je častý zdroj zmatku: výpis se v konzoli může později změnit, protože prohlížeč data zobrazuje líně. Pokud chcete skutečnou kopii, použijte console.log(JSON.parse(JSON.stringify(objekt))) nebo console.table pro pole a objekty, kde se lépe čtou vlastnosti. Pro sledování počtu volání se hodí console.count a pro měření času console.time a console.timeEnd. Vyhněte se ale tomu, nechat výpisy v produkčním kódu. Zpomalují běh a mohou unikat citlivá data.
Pokrytí má smysl jako orientační signál, ne jako cíl. Funguje dobře při kontrole kritických cest: zpracování plateb, autentizace, výpočty, migrace dat. Pokud je v těchto místech pokrytí nízké, je to vodítko, kam se podívat. Naopak přestává být užitečné ve chvíli, kdy překročí určitou hranici a začne být vynucováno plošně. Stanovení minimálního procenta pro celý repozitář vede k tomu, že se testuje i triviální gettery a konfigurační soubory. Náklady na údržbu rostou, hodnota klesá.
Dokumentace REST API není soutěž v kráse, ale nástroj, podle kterého se dá programovat. Pokud si frontend vývojář musí domýšlet, co která odpověď znamená, vznikají chyby, zpoždění a zbytečné porady. Cílem je, aby každý endpoint měl jasně popsaný vstup, výstup a chování při chybě. Teprve pak se dá paralelně pracovat na obou stranách.
Vývojové prostředí si nastavte co nejdříve a naučte se v něm pohybovat. Nejde jen o editor kódu. Součástí je emulátor rekonstrukce koupelny krok za krokemřízení, nástroje pro ladění, správa závislostí a sledování výkonu. První chybou rekonstrukce koupelny krok za krokemčátečníků je, že emulátor používají jen minimálně a testují výhradně na jednom fyzickém telefonu. Emulátor umožní měnit verze systému, rozlišení i jazykové mutace. Bez toho narazíte na problémy, které na jednom zařízení nikdy neuvidíte.
Template literals s zpětnými apostrofy usnadňují skládání řetězců a víceřádkový text. Častou chybou je vkládání složitých výrazů přímo do ${}, což snižuje čitelnost. Výraz je lepší předpočítat do proměnné. Destrukturalizace objektů a polí zkracuje přístup k datům, ale u vnořených struktur se snadno stane, že přistupujete k nedefinované vlastnosti. Řešením jsou výchozí hodnoty při destrukturalizaci nebo volitelný operátor ?., který vrátí undefined místo vyhození výjimky.
Nakonec myslete na příklady. If you adored this article and you would like to obtain more info pertaining to https://isowindows.net/user/marthazamora/ nicely visit the page. Jeden požadavek a jedna odpověď u každého endpointu řeknou víc než odstavec popisu. Uveďte i chybové stavy: co přijde při neplatném vstupu, při chybějícím oprávnění a při neexistujícím zdroji. Frontendista si tak může rovnou napsat testy a backendista ověřit, že se chování shoduje se specifikací.
Typická chyba je dokumentace psaná ručně ve formátu, který se nedá snadno ověřit. Lepší je držet specifikaci přímo v kódu nebo v souboru, ze kterého se generuje přehledné rozhraní. Tím se odstraní situace, kdy se kód změní, ale dokumentace zůstane stará. Pokud už ruční dokumentaci máte, zaveďte kontrolu při každé změně endpointu.
První aplikaci si stanovte jako opravdu malou. Například seznam položek, který umožní přidat, zobrazit a smazat záznam. Na takovém zadání si vyzkoušíte načítání dat, NáBytek Na MíRu ukládání stavu i reakci na dotyk. Vyhněte se tomu, abyste hned řešili přihlašování, cloudové služby nebo složité animace. Tyto věci přijdou později a jejich předčasné nasazení jen odvede pozornost od základů. Malý projekt, který dokončíte, má větší hodnotu než velký, který zůstane nedokončený.
Ukládání dat je místo, kde začátečníci nejčastěji chybují. Data se nemají držet jen v paměti obrazovky. Při otočení telefonu nebo návratu z jiné obrazovky se obrazovka znovu vytvoří a stav se ztratí. Naučte se proto pracovat s trvalým úložištěm a se stavovými mechanismy, které přežijí obnovu. Stejně tak si zvykněte ošetřovat situace, kdy data nejsou dostupná, načítají se nebo selžou. Prázdná obrazovka bez vysvětlení je pro uživatele horší než chybová zpráva.
Začněte tím, že každý endpoint popíšete jako samostatnou jednotku. Uveďte HTTP metodu, cestu, krátký účel a povinné i volitelné parametry. U každého parametru napište datový typ, zda je povinný, jaké má výchozí hodnoty a co se stane, když chybí. Právě tady vzniká nejvíc nedorozumění: frontend pošle číslo jako řetězec, backend čeká boolean, a chyba se hledá hodiny.
Formát odpovědí a chyb sjednoťte jednou provždy Domluvte se na jednom tvaru odpovědi. Buď vždy vracíte objekt s daty a metadaty, nebo vždy jen datovou část. Stejně tak chyby: jedna struktura s kódem, zprávou a volitelnými detaily. Když se každý endpoint chová jinak, frontend musí psát speciální obsluhu pro každé volání. To je zbytečná práce a zdroj chyb.