<?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=DakotaGwin714</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=DakotaGwin714"/>
	<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Special:Contributions/DakotaGwin714"/>
	<updated>2026-08-21T23:47:12Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=V%C3%BDb%C4%9Br_open_source_licence_bez_zbyte%C4%8Dn%C3%BDch_chyb&amp;diff=140840</id>
		<title>Výběr open source licence bez zbytečných chyb</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=V%C3%BDb%C4%9Br_open_source_licence_bez_zbyte%C4%8Dn%C3%BDch_chyb&amp;diff=140840"/>
		<updated>2026-08-21T17:50:36Z</updated>

		<summary type="html">&lt;p&gt;DakotaGwin714: Created page with &amp;quot;Dalším krokem je rozdělení kódu do malých funkcí. Pokud funkce dělá více než jednu věc, rozdělte ji. Například místo jednoho bloku, který validuje formulář, ukládá data a posílá notifikaci, vytvořte tři samostatné funkce. Výhodou je snadnější testování a opětovné použití. Pozor ale na přehnané členění – příliš mnoho jednorázových funkcí zbytečně komplikuje čtení. Ideální je najít rovnováhu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Čistý kód nen...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dalším krokem je rozdělení kódu do malých funkcí. Pokud funkce dělá více než jednu věc, rozdělte ji. Například místo jednoho bloku, který validuje formulář, ukládá data a posílá notifikaci, vytvořte tři samostatné funkce. Výhodou je snadnější testování a opětovné použití. Pozor ale na přehnané členění – příliš mnoho jednorázových funkcí zbytečně komplikuje čtení. Ideální je najít rovnováhu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Čistý kód není o osobním vkusu, ale o udržitelnosti projektu. Když píšete JavaScript, každé rozhodnutí – od názvu proměnné po  – ovlivní, jak snadno se bude kód číst a měnit. [https://www.business-Opportunities.biz/?s=Z%C3%A1kladn%C3%ADm%20pravidlem Základním pravidlem] je, že kód se píše jednou, ale čte se mnohokrát. Proto se vyplatí investovat čas do srozumitelnosti hned na začátku, místo abyste se k němu vraceli později s frustrací.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec si osvojte techniku re-estimace – přehodnocení odhadů během sprintu. Agilní týmy často dělají chybu, že odhad berou jako neměnný rozsudek. Ale pokud zjistíte, že analýza trvá déle, než se čekalo, okamžitě to komunikujte a upravte plán. Stejně tak po dokončení sprintu porovnejte odhad se skutečností a kalibrujte budoucí odhady. Tento zpětnovazební cyklus je důležitější než samotný odhad – jinak budete stále dokola opakovat stejné chyby.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Klíčové je začít odhadem ve story pointech, ne v hodinách. Story pointy vyjadřují relativní složitost a nezávisejí na individuální rychlosti člena týmu. Když máte history odhadnuté body, převeďte je na čas pomocí historických dat – kolik bodů tým průměrně zvládne za sprint. Tento přepočet ale nedělejte na začátku projektu, až po dvou až třech sprintech, kdy máte reálná čísla. [http://wudao28.com/home.php?mod=space&amp;amp;uid=2888361 barvy stěn do obýváku] té doby použijte hrubé rozpětí: analytická fáze tvoří obvykle 20–30 % celkového času, implementace 70–80 %.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec pamatujte, že čistý kód není cíl, ale proces. Pravidelně provádějte code review, používejte lintery a formátovací nástroje, ale hlavně přemýšlejte nad každým řádkem – jestli by mu porozuměl někdo, kdo projekt nezná. Tento přístup se vám vrátí nejen v údržbě, ale i ve vlastním pohodlí při dalším vývoji.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Retrospektiva týmu často sklouzne do frází jako „bylo to dobré&amp;quot; nebo „příště to zkusíme líp&amp;quot;. Bez struktury se ale ztrácí podstata – konkrétní situace, fakta a návrhy na změnu. Vyzkoušejte strukturovanou zpětnou vazbu, která dává každému členu prostor mluvit o tom, co opravdu ovlivňuje jeho práci. Klíčem je rozdělit reflexi na tři jasné oblasti: co fungovalo, co nefungovalo a co s tím uděláme.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jak konkrétně rozdělit odhad na fáze Pro každou user story si odděleně odhadněte analytickou část a implementaci. Analytika zahrnuje rozhovory se stakeholdery, tvorbu wireframů, datový model, definici akceptačních kritérií. Implementace pak kódění, unit testy, code review, integraci a nasazení. Častou chybou je, že týmy sčítají čas na analytiku a implementaci do jednoho čísla, ale zapomínají na přechodové fáze – předání mezi analytikem a vývojářem, synchronizaci, opravy po review. Přidejte na tyto režijní činnosti rezervu 10–15 % k celkovému odhadu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Před odesláním pull requestu si ověřte, že váš kód prochází všemi testy. Pokud projekt žádné testy nemá, zkuste alespoň spustit sestavení. Typickou chybou je poslat změny, které fungují jen u vás, ale rozbijí něco jiného. Po odeslání pull requestu se může stát, že vám správci napíšou připomínky. Nebuďte z toho frustrovaní – je to běžná součást spolupráce. Reagujte na komentáře věcně, vysvětlujte své rozhodnutí a případně upravte kód.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Při odhadu vždy zohledněte závislosti na jiných týmech nebo externích systémech. Pokud implementace závisí na API, které teprve vzniká, přidejte k odhadu rizikový faktor – klidně 50 % navíc. Stejně tak analytika, která čeká na rozhodnutí product ownera, je časově nejistá. V takovém případě odhadujte [http://jslt28.com/home.php?mod=space&amp;amp;uid=3708372 úložné prostory v malém bytě] rozpětí, ne jedním číslem: „5–8 bodů&amp;quot; místo „6 bodů&amp;quot;.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Časté chyby, které kazí čistotu Mezi typické chyby patří používání magických čísel – hodnot bez vysvětlení, například if (status === 3). Místo toho definujte konstantu STATUS_APPROVED = 3 a používejte ji. Podobně se vyvarujte dlouhým řetězením podmínek if…else; pokud jich je víc než dvě, zvažte použití objektu nebo mapy pro mapování stavů. Také se vyhněte mutování vstupních parametrů – místo toho vracejte nové hodnoty, což usnadňuje ladění.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Praktický postup: naplánujte analytiku jako samostatný sprint před implementací, nebo jako první část sprintu. Pokud máte dvoutýdenní sprint, vyhraňte první dva až tři dny na analýzu a zbytek na kódění. Ale pozor – nikdy nenechávejte analytiku „plavat&amp;quot; bez časového limitu. Analytik by měl mít jasný deadline, jinak se fáze nekonečně protahuje. Deadliny ale nesmí být příliš těsné – typická chyba je, že analytik stihne návrh na poslední chvíli a vývojář nestihne zpětnou vazbu.&lt;/div&gt;</summary>
		<author><name>DakotaGwin714</name></author>
	</entry>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=Jak_dostat_z_retrospektivy_v%C3%ADc:_strukturovan%C3%A1_zp%C4%9Btn%C3%A1_vazba&amp;diff=140703</id>
		<title>Jak dostat z retrospektivy víc: strukturovaná zpětná vazba</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Jak_dostat_z_retrospektivy_v%C3%ADc:_strukturovan%C3%A1_zp%C4%9Btn%C3%A1_vazba&amp;diff=140703"/>
		<updated>2026-08-21T17:37:04Z</updated>

		<summary type="html">&lt;p&gt;DakotaGwin714: Created page with &amp;quot;Nakonec si osvojte pravidlo: testy by měly být rychlé a izolované. Pokud potřebujete ke spuštění testu databázi nebo síť, děláte to špatně. Vše, co je externí, nahraďte mockem. Tím zajistíte, že testy poběží v řádu sekund a budou spolehlivé. Tento jednoduchý postup vám umožní testovat reducery a async akce i v projektech, které nemají složité prostředí, a přitom si zachovat jistotu, že logika funguje.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další praktický nást...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nakonec si osvojte pravidlo: testy by měly být rychlé a izolované. Pokud potřebujete ke spuštění testu databázi nebo síť, děláte to špatně. Vše, co je externí, nahraďte mockem. Tím zajistíte, že testy poběží v řádu sekund a budou spolehlivé. Tento jednoduchý postup vám umožní testovat reducery a async akce i v projektech, které nemají složité prostředí, a přitom si zachovat jistotu, že logika funguje.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další praktický nástroj je metoda „Start – Stop – Continue&amp;quot;. Každý člen týmu napíše jednu věc, kterou bychom měli začít dělat, jednu věc, kterou bychom měli přestat dělat, a jednu věc, kterou bychom měli dělat dál. Tyto tři kolonky pak slouží jako základ pro konkrétní akční kroky. Ke konci si vyberte jeden návrh z každé kolonky a přiřaďte k němu odpovědnou osobu a termín. Bez tohoto kroku zůstane retrospektiva jen povídáním a za dva týdny se vše vrátí do starých kolejí.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Důležité je také zvážit, jak se vaše API bude vyvíjet. REST vyžaduje při změně datového modelu často nový endpoint nebo verzi API, což přináší údržbu a zpětnou kompatibilitu. GraphQL vám umožňuje přidávat nová pole do existujícího schématu bez narušení starších klientů. Pokud ale vaše API poskytuje čistě jednoduché CRUD operace, je GraphQL zbytečně složité — jeho schéma a resolvery přidávají vrstvu abstrakce, která se nevyplatí.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jednotkové testy reducerů a asynchronních akcí v Reduxu jsou základním kamenem robustní aplikace. Nemusíte kvůli nim spouštět celé integrační prostředí, stačí vám čistý JavaScript a pár nástrojů, které už pravděpodobně máte. Reducer je totiž čistá funkce a async akce lze testovat pomocí mockování závislostí. Tento přístup vám ušetří čas a zajistí, že logika aplikace je pokryta testy dřív, než se začnete zabývat komponentami.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Prakticky doporučuji: pro interní API, které obsluhuje vaši vlastní frontendu a vyvíjí se rychle, zvolte GraphQL. Pro veřejné API určené širokému spektru klientů, kde je důležitá stabilita a předvídatelnost, zůstaňte u REST. Pokud si nejste jisti, začněte s REST — je jednodušší a univerzálnější. GraphQL lze vždy přidat později, pokud se ukáže, že REST nestačí na rostoucí požadavky na výkon a flexibilitu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Dalším důležitým pravidlem je netestovat implementaci, ale chování. Nezáleží na tom, jak přesně thunk vypadá uvnitř, ale jaké akce vyvolá a v jakém pořadí. Proto se vyhněte kontrole, jestli byla volána nějaká konkrétní funkce kromě dispatch. Místo toho se zaměřte na to, co uživatel nebo další části aplikace skutečně vidí. Tento přístup vám umožní později změnit interní strukturu akce bez nutnosti přepisovat testy, pokud zůstane zachováno chování.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jakmile je jednotková vrstva pevná, přejděte na integrační testy. Ty ověřují, že vaše komponenty spolupracují správně – typicky s databází, externími službami nebo frontendem. Zde platí pravidlo: testujte jen to, co jednotkově nejde pokrýt. Například mapování ORM, SQL dotazy nebo synchronizaci mezi moduly. U integračních testů si dejte pozor na stav prostředí. Vždy používejte izolovanou testovací databázi a po každém běhu ji vracejte do původního stavu. Jinak se vám testy navzájem ovlivňují a vy strávíte hodiny hledáním chyby, která je jen artefaktem pořadí testů.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Dalším častým problémem je testování příliš mnoha věcí v jednom testu. Metoda by měla ověřovat jen jednu chování. Pokud máte metodu, která počítá a zároveň ukládá do souboru, rozdělte test na dvě části – jednu pro výpočet a druhou pro uložení. Tím snadněji najdete příčinu, když test selže. Používejte také srozumitelné názvy testů, které popisují očekávané chování, například Add_ReturnsCorrectSum_WhenGivenTwoPositiveNumbers. Takový název je samodokumentující a usnadňuje údržbu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Začněte testováním reducerů. Vytvořte si samostatný soubor pro každý reducer a testujte ho jako obyčejnou funkci. Vstupem je aktuální stav a akce, výstupem nový stav. Ověřte, že se stav nemění, pokud akce neodpovídá žádnému případu, a že se korektně mění pro každou důležitou akci. Typická chyba: zapomenete otestovat výchozí větev, která vrací nezměněný stav. To je přitom nejdůležitější část, protože chrání před náhodnou mutací dat.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Druhým častým problémem je formátování. Pokud máte v jednom projektu Python a JavaScript, každý má jiný standard (například PEP 8 a Prettier). V nastavení IDE si pro každý jazyk definujte příslušný formátovač a zapněte „format on save&amp;quot;. Pozor na konflikt s automatickým importem – často se stává, že IDE vloží import z jiného jazyka, což způsobí chybu. Řešením je zakázat automatické importy v souborech, které nepatří do daného jazyka.&lt;/div&gt;</summary>
		<author><name>DakotaGwin714</name></author>
	</entry>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=User:DakotaGwin714&amp;diff=140701</id>
		<title>User:DakotaGwin714</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=User:DakotaGwin714&amp;diff=140701"/>
		<updated>2026-08-21T17:37:00Z</updated>

		<summary type="html">&lt;p&gt;DakotaGwin714: Created page with &amp;quot;Váš průvodce světem interiérů žije už dlouho. Píšu o tom, jak zvládnout domácnost bez stresu. Nejvíc mě baví ukazovat chytrá řešení, která zvládne každý.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Váš průvodce světem interiérů žije už dlouho. Píšu o tom, jak zvládnout domácnost bez stresu. Nejvíc mě baví ukazovat chytrá řešení, která zvládne každý.&lt;/div&gt;</summary>
		<author><name>DakotaGwin714</name></author>
	</entry>
</feed>