<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.it-core.eu/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SaundraBoote62</id>
	<title>IT-Core - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.it-core.eu/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SaundraBoote62"/>
	<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Special:Contributions/SaundraBoote62"/>
	<updated>2026-09-03T04:31:33Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=Kdy_v%C3%A1m_vestav%C4%9Bn%C3%A9_n%C3%A1stroje_IDE_u%C5%A1et%C5%99%C3%AD_hodiny_pr%C3%A1ce%3F&amp;diff=200974</id>
		<title>Kdy vám vestavěné nástroje IDE ušetří hodiny práce?</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Kdy_v%C3%A1m_vestav%C4%9Bn%C3%A9_n%C3%A1stroje_IDE_u%C5%A1et%C5%99%C3%AD_hodiny_pr%C3%A1ce%3F&amp;diff=200974"/>
		<updated>2026-08-29T06:14:51Z</updated>

		<summary type="html">&lt;p&gt;SaundraBoote62: Created page with &amp;quot;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...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&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;Vyplatí se také sledovat čas běhu testů. Když se jednotkové testy zpomalí nad pár sekund, podívejte se, jestli nepoužívají zbytečné závislosti. Integrační testy by měly běžet v řádu minut, e2e maximálně v desítkách minut. Pokud váš e2e běh trvá hodiny, je to známka toho, že máte v pyramidě příliš mnoho vrstev navrchu. Postupně přesouvejte část testů dolů – nahraďte e2e test integračním tam, kde to jde. Testovací pyramida není statická, je to živý proces, který se vyvíjí s projektem.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;U jednotkových testů si dejte pozor na testování implementace místo chování. Testujte, co funkce dělá, ne to, jak to dělá. Když test začnete plnit kontrolami vnitřních stavů, každá refaktorizace kódu test rozbije, i když chování zůstává stejné. U integračních testů zase hrozí, že budete testovat samotnou databázi, což je zbytečné. Zaměřte se na to, aby test prokázal, že vaše vrstvy spolu správně komunikují, ne že databáze funguje – to už ověřil její výrobce.&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;Typickým prohřeškem je, že se e2e testy snaží pokrýt vše. Pak jsou pomalé, nestabilní a jejich údržba vás stojí víc času než psaní nových funkcí. Místo toho je používejte střídmě a na kritické cesty. Když e2e test selže, chcete hned vědět, co se rozbilo. Proto v nich nepoužívejte dlouhé čekací časy na náhodné prvky, ale raději explicitní počkání na konkrétní stav aplikace. A hlavně – když test začne být křehký, neopravujte ho přidáváním čekání, ale zkuste přijít na to, proč je nestabilní. Často to odhalí skutečný problém v aplikaci.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Praktické kroky, jak pyramidu postavit v reálném projektu Nejdřív si vyhraďte čas na analýzu kritických cest. Sedněte si s týmem a napište si tři až pět nejdůležitějších uživatelských scénářů, jako je registrace, přihlášení nebo vytvoření objednávky. Tyto cesty pokryjte end-to-end testy. Vše ostatní, co je vedlejší, řešte na nižších vrstvách. Když narazíte na funkci, která potřebuje ověřit logiku, napište pro ni jednotkový test. Když potřebujete ověřit, že data správně putují mezi vrstvami, přidejte integrační test. Tím zajistíte, že každá vrstva dělá to, k čemu je určena.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Při testování responzivity si všímejte chování při zlomových bodech. Grid s grid-template-columns bez media queries se chová plynule, ale pokud potřebujete změnit pořadí prvků (například na mobilu zobrazit sidebar pod hlavním obsahem), využijte grid-template-areas a v media query přiřaďte jiné oblasti. U Flexboxu zase ověřte, že flex-wrap: wrap funguje tak, jak očekáváte – často se stane, že prvky se zalamují neočekávaně, protože zapomenete nastavit flex-basis. Vždy definujte minimální šířku nebo základ, aby se prvky chovaly předvídatelně.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Začněte tím, že si definujete tři vrstvy. Nejnižší jsou jednotkové testy – testují jednu funkci nebo třídu bez závislostí. Střední vrstva patří integračním testům, které ověřují spolupráci dvou nebo více komponent, třeba databáze s repozitářem. Na vrcholu jsou end-to-end testy, které procházejí celou aplikací, jakoby ji používal skutečný uživatel. Typický poměr je sedmdesát procent jednotkových, dvacet procent integračních a deset procent end-to-end. Tento poměr není dogma, ale výchozí bod, od kterého se můžete odchýlit podle svého projektu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Druhým praktickým nástrojem je extrakce metody nebo proměnné. Když vidíte příliš dlouhou funkci, vyberte část kódu a použijte Extract Method (Ctrl+Alt+M). IDE vytvoří novou metodu s potřebnými parametry a nahradí vybraný blok voláním. To je bezpečnější než ruční kopírování, protože se předejde chybám v počtu nebo pořadí argumentů. Podobně funguje Extract Variable, která nahradí opakovaný výraz lokální proměnnou. Při použití těchto nástrojů dejte pozor na to, aby nově vytvořené metody měly smysluplné názvy a neobsahovaly příliš mnoho parametrů.&lt;/div&gt;</summary>
		<author><name>SaundraBoote62</name></author>
	</entry>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=User:SaundraBoote62&amp;diff=200973</id>
		<title>User:SaundraBoote62</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=User:SaundraBoote62&amp;diff=200973"/>
		<updated>2026-08-29T06:14:48Z</updated>

		<summary type="html">&lt;p&gt;SaundraBoote62: Created page with &amp;quot;Autor blogu praktickým bydlením sází na osvědčené tipy. Píšu o tom, jak skloubit funkčnost s teplem domova. Nejraději popisovat postupy krok za krokem.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor blogu praktickým bydlením sází na osvědčené tipy. Píšu o tom, jak skloubit funkčnost s teplem domova. Nejraději popisovat postupy krok za krokem.&lt;/div&gt;</summary>
		<author><name>SaundraBoote62</name></author>
	</entry>
</feed>