Vaše první aplikace by měla umět něco jednoduchého – třeba pozdravit uživatele a přečíst jeho jméno. Než začnete psát, ujasněte si, co od programu chcete. Například: „Zobrazím text, pak počkám na vstup od uživatele a nakonec vypíšu odpověď.” Tento postup je čitelný a snadno se testuje. Při psaní kódu si dejte pozor na to, aby se každý příkaz ukončil středníkem. Čeština dělá v C# problém jen tehdy, když zapomenete na diakritiku – ale to je spíš vizuální záležitost. Skutečný problém nastává, když použijete místo středníku tečku nebo rovnou zapomenete uzavřít závorku. To jsou nejčastější chyby, které kompilátor hlásí.
Typickou chybou začátečníků je použití NoSQL pro data, která vyžadují vztahy a transakce. Pokud ukládáte faktury a položky faktur, potřebujete zaručit, že se buď uloží celý dokument, nebo se neuloží nic. Většina NoSQL databází sice nabízí transakce, ale jejich použití je často omezené a složitější než v SQL. Než začnete modelovat, ověřte si, jak daný systém řeší atomické operace. Další pastí je špatný výběr typu databáze: dokumentová databáze není vhodná pro grafy vztahů mezi uživateli, klíč-hodnota úložiště neumí efektivně dotazovat podle více atributů. Vždy si nejprve definujte, jak budete data číst, a teprve potom vyberte konkrétní nástroj.
Jakmile rozumíte odpovědím, začněte psát vlastní kód. Většina jazyků má knihovny, které práci s API výrazně zjednoduší. V Pythonu je to třeba knihovna na HTTP požadavky, v JavaScriptu pak funkce fetch. Nezapomeňte na dvě věci: vždy nastavte časový limit, aby se váš program nezasekl, a vždy zpracujte chyby — nepočítejte s tím, že API odpoví přesně podle dokumentace. Typická začátečnická chyba je ignorovat chybové stavy a předpokládat, že data jsou vždy ve stejném formátu.
Nejdůležitější je číst dokumentaci a testovat na malém vzorku Dokumentace není jen nudný text — je to smlouva mezi vámi a poskytovatelem služby. Najdete tam, jaké metody jsou dostupné, jaké parametry přijímají a jaká je struktura odpovědi. Než začnete psát kód, přečtěte si sekci o autentizaci. Většina API vyžaduje klíč, který posíláte v hlavičce požadavku. Nikdy nedávejte tento klíč přímo do kódu, který by se mohl dostat na veřejnost — ukládejte ho do proměnných prostředí nebo do konfiguračního souboru, který není verzovaný. Pokud klíč omylem zveřejníte, okamžitě ho zneplatněte a vygenerujte nový.
Druhá užitečná funkce je spread operátor (tři tečky). Umožňuje snadno kopírovat pole (`const copy = […arr]`) nebo objekty (`const copyObj = …obj `). Tím se vyhnete mutaci původních dat. Typická chyba je ale použití spreadu pro vnořené objekty – kopie je mělká, takže změna vnořené vlastnosti ovlivní i originál. Pro hlubokou kopii musíte sáhnout po strukturovaném klonu nebo si napsat vlastní rekurzivní řešení.
Jak na asynchronní kód bez bolesti Třetí funkce, která změní váš přístup k asynchronnímu kódu, je `async/await`. Namísto řetězení `Promise.then()` a záplatování chyb v `catch` píšete sekvenční kód, který se snadno čte i ladí. Nezapomínejte ale, že `await` funguje jen uvnitř funkcí označených `async`. Při volání bez `try/catch` se chyba přenese na volajícího – pokud ji tam nechytíte, skončí jako unhandled rejection. Praktické je kombinovat `async/await` s `Promise.all`, když potřebujete paralelně načíst data.
Pokud máte více feature větví, které spolu souvisí, zvažte, zda je neřešit na jedné větvi, ale postupně. Často se stává, že dvě větve mění stejný soubor a po mergu druhé z nich vzniknou zbytečné konflikty. Místo toho si práci naplánujte tak, aby se větve vzájemně nepřekrývaly, nebo je slučte do jedné „epické” větve, kterou pak mergnete najednou. Tím se vyhnete situaci, kdy máte pět větví čekajících na merge a každá obsahuje změny, které závisí na jiné.
Když pracujete na více feature větvích najednou, verzování se rychle změní v chaos, pokud nemáte jasná pravidla. Nejčastější chybou je spoléhat se na to, že si každý zapamatuje, co kde dělá. Místo toho si nastavte systém, který funguje i ve chvíli, kdy na projektu dělá více lidí a větve se začnou křížit.
Na závěr si zkuste napsat malý skript, který zpracuje odpověď z API a uloží ji do souboru. To vás naučí pracovat s daty, která nejsou čistě tabulková. Často narazíte na vnořené struktury — pole objektů, objekty v objektech. Naučte se je procházet a získávat konkrétní hodnoty. Pokud narazíte na chybu, kterou nechápete, zkuste si odpověď vypsat celou, včetně hlaviček. Často tam najdete podrobnosti, které vám pomůžou problém vyřešit. Až to zvládnete, budete mít solidní základ pro práci s jakýmkoli API, které vám přijde do cesty.
If you loved this post and you would certainly like to obtain more details regarding úložné prostory v malém Bytě kindly browse through our site.
