Nejdůležitější je rozhodnout se podle charakteru aplikace. Pokud máte veřejné API, které musí být stabilní a snadno použitelné pro externí vývojáře, REST je bezpečná volba. Pro interní nástroje a aplikace s rychle se měnícími požadavky na data je GraphQL efektivnější, ale jen pokud máte tým, který rozumí jeho úskalím. Než se rozhodnete, spočítejte si, kolikrát denně klient volá API, kolik dat reálně přenáší a jak složitá je vaše datová struktura. Často zjistíte, že kombinace obou – REST pro stabilní zdroje a GraphQL pro agregace – je nejpragmatičtější cesta.
Nakonec si uvědomte, že komunikace odhadu není jen o tom, co řeknete, ale i o tom, jak to řeknete. Když budete mluvit klidně a srozumitelně, bez zbytečných slibů, zákazník získá pocit, že má věci pod kontrolou. A to je přesně to, co potřebujete. Časem zjistíte, že se vám s takovým přístupem lépe spolupracuje – méně stresu, méně konfliktů a více důvěry. A když už se něco nepovede, je mnohem snazší to vysvětlit, když jste od začátku mluvili o možnostech, ne o jistotách.
Při výběru mezi REST API a GraphQL nejde o módní trend, ale o konkrétní dopady na výkon, údržbu a rychlost vývoje. Mnoho týmů sáhne po GraphQL jen proto, že je „moderní", a pak řeší problémy s cachováním nebo přetíženým serverem. Jiní zůstanou u RESTu a bojují s nadbytečnými daty v každé odpovědi. Klíčové je pochopit, jak obě technologie pracují s daty a kde leží jejich skutečné limity.
Pokrytí testy se obvykle měří jako podíl řádků kódu, které prošly některým z testů, vůči celkovému počtu řádků. Nejjednodušší způsob, jak ho zjistit, je použít nástroj integrovaný do testovacího běhu – stačí spustit testy s parametrem pro měření pokrytí a výstupem je číslo v procentech. Důležité je měřit pokrytí nejen u nového kódu, ale i u změn ve stávajícím, protože právě tam se chyby nejčastěji objevují. Pozor na to, že pokrytí řádků neříká nic o tom, zda jsou otestovány všechny důležité větve nebo stavy – dva testy mohou projít stejnou řádkou, ale každý testuje jinou logiku.
REST API je skvělou volbou, pokud vaše API má sloužit veřejně, je stabilní a potřebujete jednoduchou dokumentaci. Typicky se hodí pro CRUD operace, kdy každý zdroj (resource) má vlastní endpoint a jasně danou strukturu. V praxi to znamená, že klient dostane vždy všechna data, která endpoint nabízí, ať potřebuje jedno pole nebo deset. To je výhoda i nevýhoda zároveň. Pokud máte entity s mnoha poli a klienti je používají různým způsobem, začnete brzy řešit problém s nadbytečnými daty. Řešením není přidávat další endpointy, ale zvážit GraphQL.
Začněte tím, že si sami pro sebe rozdělíte práci na menší části a ke každé přiřadíte rozpětí, ne jedno číslo. Například „návrh architektury mi zabere dva až tři dny", „implementace API pět až sedm dní". Tento postup vám dá reálný obraz o tom, kolik času vlastně potřebujete. Zákazníkovi pak řeknete: „Celkem to vidím na deset až čtrnáct dní, ale přesný termín upřesním po první fázi." Tím mu dáváte jasnou představu, ale zároveň si necháváte prostor pro nepředvídatelné okolnosti. Zároveň tím nastavujete očekávání, že termín se může upřesnit – a to je v pořádku.
První rekonstrukce koupelny krok za krokem: přestaňte odhadovat analytiku a implementaci jako dva izolované bloky. Místo toho si práci rozložte na malé uživatelské příběhy, které procházejí celým cyklem – od analýzy přes návrh až po nasazení. U každého příběhu odhadněte celkový čas a teprve poté ho rozdělte na části. Tím zajistíte, že analytické činnosti nebudou uměle oddělené od toho, co skutečně ovlivňují – od složitosti implementace. Pokud analytik odhaduje bez znalosti technických omezení, jeho čísla jsou jen hádání.
Nejlepší přístup je kombinovat pokrytí s testováním chování – ptejte se, zda testy pokrývají požadavky, ne jen řádky. Pokud máte test, který ověřuje, že se po uložení formuláře zobrazí potvrzení, je užitečnější než deset testů, které jen volají gettery. Když začnete pokrytí vnímat jako jeden z mnoha nástrojů, ne jako cíl sám o sobě, přestanete se honit za čísly a rekonstrukce koupelny krok za krokemčnete psát testy, které skutečně chrání váš kód. Až budete příště přemýšlet, zda přidat další test jen kvůli pokrytí, zeptejte se sami sebe, jakou chybu by mohl odhalit – pokud žádnou, je lepší čas věnovat něčemu jinému.
Nakonec si osvojte zvyk psát testy průběžně, ne až na konci. Čím déle testy odkládáte, tím těžší je je dopsat a tím menší mají hodnotu. Začněte malým testem pro první funkci, kterou napíšete, a postupně přidávejte další. Uvidíte, že po pár dnech se psaní testů stane přirozenou součástí vaší práce.
If you cherished this article so you would like to collect more info regarding http://Dhi.Org.mx kindly visit the web-page.