Jump to content

Jak psát čistý kód v JavaScriptu a zkrátit ladění o hodiny

From Babylon SIGNALIS Wiki

Když máte pocit, že kód je moc dlouhý, rozdělte ho na menší celky Třetím návykem je pravidelná extrakce opakujících se vzorů. Pokud vidíte stejnou logiku na třech místech, vytvořte z ní sdílenou funkci. Nejde jen o to, že ušetříte pár řádků – hlavní výhoda je, že opravu stačí udělat na jednom místě. Když objevíte chybu ve validaci e-mailu, nehledáte ji všude, ale jen v jedné funkci. Tento návyk vyžaduje disciplínu, protože kopírování se zdá rychlejší, ale z dlouhodobého hlediska vám ušetří víc času. Typická chyba: funkce, která je sice krátká, ale přebírá příliš mnoho parametrů a tím se stává nepřehlednou.

Kromě klasického kruhu se objevují i takzvané halové jevy – vedlejší slunce (parhelia), světelné sloupy a oblouky. Parhelia vypadají jako dvě barevné skvrny po stranách slunce, obvykle ve vzdálenosti 22 stupňů. Vznikají, když ledové destičky padají vodorovně a lámou světlo v horizontální rovině. Praktická rada: pokud vidíte parhelia, podívejte se po obloze i na jiné úkazy, protože se často kombinují s dalšími oblouky, jako je horní dotykový oblouk nebo circumzenitální oblouk (ten vypadá jako obrácená duha vysoko nad hlavou). Fotografování hal je snadné, ale pozor na expozici – slunce i okolní oblohu. Raději foťte s clonou a krátkým časem, jinak vám přeexponuje střed.

Když si na podzim přivezete čerstvě nařezané dříví, máte před sebou důležitý úkol: připravit ho tak, aby do topné sezóny stihlo vyschnout a vydrželo co nejdéle. Nejde jen o to, kde ho složit. Rozhoduje způsob skladování, proudění vzduchu i to, jak dlouho necháte dřevo odpočívat. Pokud uděláte základní chyby, dřevo zůstane vlhké, bude špatně hořet a rychleji podlehne hnilobě.

Nejčastějším úkazem je halo – kruh kolem slunce o poloměru 22 stupňů. Vzniká, když světlo prochází šestibokými ledovými krystalky ve vysokých oblacích, obvykle v řasových nebo slohových vrstvách. Pokud chcete halo pozorovat, hledejte tenký závoj oblačnosti, který často předznamenává příchod teplé fronty. Důležité je zakrýt si slunce rukou nebo ho schovat za roh budovy, jinak si poškodíte zrak. Halo má sotva znatelné barvy – vnitřní okraj bývá načervenalý, vnější namodralý, ale celkově působí spíše bělavě. Nesplette si ho s duhou, která je vždy na opačné straně než slunce a vzniká na vodních kapkách.

Při skládání jednotlivých kusů dřeva se vyplatí dodržet jednu zásadu: nenakládejte je na sebe těsně jako cihly. Mezi poleny nechte malé mezery, aby mohl vzduch cirkulovat. Nejlépe uděláte, když budete dřevo skládat do kříže, tedy vždy jednu vrstvu podélně a další příčně. Tento způsob sice zabere trochu více času, ale výrazně urychlí schnutí. Hromadu umístěte tak, aby byla odkrytá směrem k převládajícím větrům, ale chráněná před přímým deštěm. Pokud nemáte střechu, můžete vršek zakrýt nepromokavou plachtou, ale vždy ji upevněte tak, aby nebránila proudění vzduchu z boků.

Začněte u postele, která by neměla zabírat víc než polovinu podlahové plochy. Pokud je ložnice úzká, postavte postel podél delší stěny, nikoli doprostřed. Vyhnete se tak dojmu, že pokoj připomíná chodbu. Místo masivního rámu s čelem zvolte jednodušší konstrukci, případně postel bez čela a hlavu lůžka opřete o polštáře. Pokud potřebujete úložný prostor, sáhněte po posteli s výsuvnými šuplíky nebo zvedacím mechanismem – ušetříte místo za skříň, kterou byste jinak museli do pokoje vtěsnat.

Zavést tyto návyky do praxe není náročné, ale vyžaduje to vědomé úsilí. Začněte tím, že budete při psaní kódu myslet na budoucnost – konkrétně na to, jak budete postupovat, až se objeví chyba. Pokud je kód rozdělený, popsaný a bez zbytečné komplexity, ladění se změní z frustrujícího luštění na rychlou opravu. Vyplatí se investovat do přehlednosti už teď, protože čas strávený čtením kódu je vždy vyšší než čas strávený jeho psaním.

Druhý návyk se týká pojmenování proměnných a funkcí. Vyhněte se názvům jako data, info nebo x. Místo toho používejte popisné názvy, které říkají, co hodnota skutečně obsahuje. priceAfterDiscount je jasné, p není. Stejně tak názvy funkcí by měly být slovesa: getUserById místo procesUzivatele. Tím se snižuje kognitivní zátěž – při ladění nemusíte neustále přemýšlet, co která proměnná znamená. Známá chyba: používání zkratek, které dávají smysl jen autorovi kódu. Za dva měsíce už si je nepamatuje ani on.

Irizace: když mraky hrají pastelovými tóny Zcela jiný svět začíná u irizace, která se objevuje v blízkosti slunce nebo měsíce, ale na rozdíl od hal nemá ostré hranice. Jde o duhové zbarvení okrajů oblaků, typicky u kupovitých oblaků s vývojem do výšky. Příčinou jsou drobné kapičky vody nebo ledové krystalky podobné velikosti, které světlo ohýbají a rozkládají. Irizaci spatříte nejlépe, když slunce svítí přes tenký okraj mraku, který ještě nezačal pršet. Barvy se mění podle velikosti kapiček – čím menší, tím sytější a srovnanější duhové pruhy. Pokud je mrak příliš hustý nebo slunce příliš nízko, irizace se ztrácí.