<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.rettungsdienstblog.eu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=AlphonsoFinnerty</id>
	<title>Rettungsdienst-Wiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.rettungsdienstblog.eu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=AlphonsoFinnerty"/>
	<link rel="alternate" type="text/html" href="https://wiki.rettungsdienstblog.eu/index.php?title=Spezial:Beitr%C3%A4ge/AlphonsoFinnerty"/>
	<updated>2026-09-14T11:28:11Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.rettungsdienstblog.eu/index.php?title=Co_odli%C5%A1uje_pou%C5%BEiteln%C3%BD_web_od_toho,_kter%C3%BD_u%C5%BEivatele_odrad%C3%AD%3F&amp;diff=204510</id>
		<title>Co odlišuje použitelný web od toho, který uživatele odradí?</title>
		<link rel="alternate" type="text/html" href="https://wiki.rettungsdienstblog.eu/index.php?title=Co_odli%C5%A1uje_pou%C5%BEiteln%C3%BD_web_od_toho,_kter%C3%BD_u%C5%BEivatele_odrad%C3%AD%3F&amp;diff=204510"/>
		<updated>2026-08-29T04:56:44Z</updated>

		<summary type="html">&lt;p&gt;AlphonsoFinnerty: Die Seite wurde neu angelegt: „Když píšete JavaScript, snadno podlehnete dojmu, že rychlé řešení je to nejlepší. Ale za tři týdny se k vlastnímu kódu vrátíte a zjistíte, že nerozumíte ani vlastním proměnným. Čistý kód není o estetice, ale o tom, abyste dokázali rychle najít chybu a bezpečně přidat novou funkci. Základní pravidlo zní: pište kód pro lidi, ne pro stroj. Stroj přečte cokoli, ale člověk potřebuje jasné pojmenování, krátké funkce…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Když píšete JavaScript, snadno podlehnete dojmu, že rychlé řešení je to nejlepší. Ale za tři týdny se k vlastnímu kódu vrátíte a zjistíte, že nerozumíte ani vlastním proměnným. Čistý kód není o estetice, ale o tom, abyste dokázali rychle najít chybu a bezpečně přidat novou funkci. Základní pravidlo zní: pište kód pro lidi, ne pro stroj. Stroj přečte cokoli, ale člověk potřebuje jasné pojmenování, krátké funkce a minimální překvapení.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Na závěr si osvojte práci s malými funkcemi a čistými datovými strukturami. Místo dlouhého řetězce if-else pro různé typy zpráv použijte objekt, který mapuje klíče na funkce nebo hodnoty. Tím se kód stane deklarativnějším a snadno rozšiřitelným. Až budete příště psát funkci, zeptejte se sami sebe: rozuměl bych tomu za měsíc, kdybych to viděl poprvé? Pokud ne, přepište ji hned – ušetříte si pozdější hodiny ladění.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Psaní commit zpráv patří mezi činnosti, které většina vývojářů odbývá. Přitom právě tyto krátké texty tvoří chronologický záznam o vývoji projektu. Když do nich po půl roce nahlédnete, měly by vám okamžitě odpovědět na tři otázky: co se změnilo, proč se to změnilo a jaké to má důsledky. Bez těchto informací se i dokonalý kód stává nesrozumitelnou hromadou znaků.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jakmile máte centrální soubor, je klíčové zajistit, aby ho všichni skutečně používali. Ideální je propojit konfiguraci s nástroji, které běží automaticky při každém buildu nebo commitnutí. Například pokud používáte formátovač, nastavte ho tak, aby běžel jako pre-commit hook. Tím zajistíte, že kód projde jednotným stylem bez ohledu na to, kdo ho píše. U lintovacích pravidel zase zapněte automatickou kontrolu v CI pipeline, aby se nedostatky objevily dřív, než se dostanou do hlavní větve. Pozor na to, že jen sdílený soubor bez vynucení je k ničemu – členové týmu ho mohou obcházet.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Častou chybou je zapomínat na to, že async akce může dispatchovat více akcí – například start, success a error. V testu byste měli ověřit všechny tři scénáře. Dále pozor na to, aby vaše mock funkce vracely Promise, který se skutečně vyřeší – jinak se test může „zaseknout&amp;quot;. Také se vyhněte tomu, abyste v testech používali reálné API volání – místo toho si vytvořte mock pro fetch nebo axios. Tím zajistíte, že testy budou rychlé a spolehlivé, protože nezávisí na síti.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další častý problém je práce s globálními proměnnými. V JavaScriptu snadno vytvoříte proměnnou bez deklarace, čímž se stane globální, a to i ve funkcích. Tím se pak chyby projevují na místech, která s původním kódem nesouvisí. Vždy používejte const pro hodnoty, které se nemění, a let pro ty, které se mění. Vyhněte se var, protože jeho chování s hoistingem a function scope je častým zdrojem zmatků. Pokud vytváříte modul, uzavřete kód do bloku nebo funkce, aby proměnné neunikly ven.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nezapomínejte ani na komentáře – ale jen tehdy, když vysvětlují proč, ne co. Komentář typu // increment counter je zbytečný, protože to vidíte z kódu. Užitečný je komentář, který vysvětluje netriviální obchodní logiku nebo upozorňuje na známý problém. Také se vyhněte komentářům, které popisují, co by kód měl dělat, ale neodpovídají skutečnosti – takové komentáře jsou horší než žádné, protože klamou.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Častou chybou začátečníků je verzovat citlivé údaje, jako jsou hesla nebo API klíče. Nikdy je nedávejte do veřejného repozitáře. Použijte soubor pro ignorování (například .gitignore), který vyloučí konfigurační soubory, složky s instalovanými balíčky nebo dočasné soubory. Tím se vyhnete tomu, že se k vašim přihlašovacím údajům dostane někdo nepovolaný. Také pozor na velké binární soubory – obrázky nebo videa byste měli ukládat zvlášť, protože verzovací nástroje nejsou na jejich správu stavěné.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jak na to – a na co si dát pozor Začněte tím, že si definujete jednoduché testovací případy pro každou akci, kterou reducer umí zpracovat. Pro každý případ připravte výchozí stav, akci s payloadem a očekávaný nový stav. Test pak vypadá jako porovnání dvou objektů. Praktická ukázka: pokud máte reducer pro přidání položky do seznamu, otestujte, že přidá položku na konec, že nezmění původní seznam a že při prázdném seznamu funguje správně. Vyhněte se testování více akcí v jednom testu – každý test by měl ověřovat jednu konkrétní věc, aby bylo snadné najít příčinu případného selhání.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Stejně důležité je i pojmenování funkcí. handleClick() je sice časté, ale nic neříká. Zkuste saveUserPreferences() nebo toggleSidebar(). Funkce by měla mít jedno jasné zodpovědnosti – pokud dělá dvě věci, rozdělte ji na dvě. Typická chyba je funkce, která zároveň validuje vstup, posílá požadavek na server a aktualizuje DOM. Takový kód se nedá testovat ani znovu použít. Místo toho vytvořte malé funkce, které lze volat samostatně a které vrací očekávaný výsledek.&lt;/div&gt;</summary>
		<author><name>AlphonsoFinnerty</name></author>
	</entry>
	<entry>
		<id>https://wiki.rettungsdienstblog.eu/index.php?title=Benutzer:AlphonsoFinnerty&amp;diff=204507</id>
		<title>Benutzer:AlphonsoFinnerty</title>
		<link rel="alternate" type="text/html" href="https://wiki.rettungsdienstblog.eu/index.php?title=Benutzer:AlphonsoFinnerty&amp;diff=204507"/>
		<updated>2026-08-29T04:56:41Z</updated>

		<summary type="html">&lt;p&gt;AlphonsoFinnerty: Die Seite wurde neu angelegt: „Někdo, kdo dílnou i obývákem se zabývá denně. Píšu o tom, jak si poradit v malém bytě. Nejvíc mě baví popisovat postupy krok za krokem.“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Někdo, kdo dílnou i obývákem se zabývá denně. Píšu o tom, jak si poradit v malém bytě. Nejvíc mě baví popisovat postupy krok za krokem.&lt;/div&gt;</summary>
		<author><name>AlphonsoFinnerty</name></author>
	</entry>
</feed>