Když přecházíte na moderní JavaScript, těchto chyb se vyvarujte

Aus Rettungsdienst-Wiki
Zur Navigation springen Zur Suche springen


Nejčastější chyba je funkce, která načte data, přepočítá je, vykreslí do stránky a ještě zapíše do logu. If you liked this post and you would like to acquire more data with regards to více na webu kindly visit our webpage. Taková funkce se nedá testovat ani znovu použít. Rozdělte ji na menší části, každá ať má jasný vstup a výstup. Pokud funkce přesáhne zhruba dvacet řádků, zkuste se zamyslet, jestli v ní není skrytá další odpovědnost. Vyhněte se také předávání příliš mnoha parametrů; když jich je víc než tři, bývá čitelnější předat objekt s pojmenovanými vlastnostmi. Uvnitř funkcí používejte const jako výchozí volbu a let jen tam, kde se hodnota skutečně mění. var dnes nemá v běžném kódu co dělat.

Funkce, které dělají jednu v�

Přechod z dřívějšího JavaScriptu na syntaxi ES6 a novější není jen o tom naučit se pár nových klíčových slov. Většina problémů vzniká ve chvíli, kdy vývojář začne nové funkce kombinovat se starými návyky. Následující řádky shrnují, na co si dát pozor při každodenním psaní kódu, který má být čitelný a předvídatelný.

Typická chyba je odhadovat bez započtení režie. Lidé si představují, že den má osm hodin čisté práce. Ve skutečnosti schůzky, komunikace, code review, podpora kolegů a přerušování ukrojí často polovinu. Pokud plánujete na plný úvazek, odhad bude osvětlení v obývákuždy optimistický. Počítejte reálně s tím, co zbude, a raději plánujte na méně hodin, než by bylo technicky možné.

Hranice, kterou většina týmů posune pozd

Rezerva není slabost, ale nástroj Do každého odhadu přidejte vědomou rezervu na neočekávané. Ne jako skrytou položku „na nafouknutí", ale jako pojmenovanou část, kterou umíte obhájit. U nových technologií nebo integrací počítejte klidně s dvojnásobkem. U rutinní práce, kterou jste dělali mnohokrát, stačí menší polštář. Rezerva se nemá rozdávat na začátku projektu, ale držet stranou na moment, kdy se něco pokazí. Tým, který rezervu nemá, končí buď v přesčasech, nebo v nedodané kvalitě.

Odhady času v softwarových projektech selhávají tak pravidelně, až to přestává být náhoda. Většina týmů podceňuje složitost, přeceňuje soustředění a zapomíná na režii. Přitom stačí několik návyků, které odhad zpřesní i bez zázračných metodik. Nejde o to trefit termín na hodinu, ale umět vysvětlit, proč se odhad posunul a co s tím dělat.

Základem je rozklad na malé části. Místo „nasadíme přihlašování" rozdělte práci na jednotlivé kroky: návrh datového modelu, napojení na poskytovatele identity, obsluha chybových stavů, testy, dokumentace. Každý krok odhadněte zvlášť. Malé celky se odhadují výrazně lépe než velké bloky, protože v nich není skrytá nejistota. Pokud některý krok nedokážete odhadnout, není to slabost – je to signál, že mu nerozumíte a je potřeba ho nejdřív prozkoumat.

Největší past je asynchronní kód. Když se zarážka zastaví uvnitř promise nebo časovače, zásobník volání už dávno neodpovídá tomu, co jste očekávali. Prohlížeče dnes umí zobrazit i asynchronní zásobník, ale musíte si ho zapnout, jinak vidíte jen prázdný seznam. Další častá chyba je ladění v produkční verzi, kde je kód minifikovaný. Zdrojové mapy to řeší, ale jen když jsou správně vygenerované a dostupné. Bez nich se v zastaveném kódu nevyznáte a názvy proměnných jsou jednopísmenné.

Nakonec se vyhněte tlaku na jedno číslo. Když vedení chce jediný termín, přidejte k němu i rozsah: co je jisté, co je pravděpodobné a co je riziko. Odhad bez uvedení nejistoty je jen přání. Kdo umí říct „tento krok zvládneme do týdne, pokud se potvrdí předpoklad X, jinak to bude dva týdny", ten nebude překvapený a nebude vypadat jako ten, kdo neumí odhadovat.

Další pastí je odhadovat jednou a už se k němu nevracet. Odhad je hypotéza, která se má s postupem práce zpřesňovat. Po každém dokončeném kroku porovnejte skutečnost s původním číslem a zapište si, kde vznikl rozdíl. Po několika iteracích získáte vlastní koeficient – třeba že vám vše trvá o třetinu déle, než jste si mysleli. Ten koeficient je cennější než jakákoli univerzální tabulka.