<?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=EmilieGarth366</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=EmilieGarth366"/>
	<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Special:Contributions/EmilieGarth366"/>
	<updated>2026-09-05T06:58:19Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=Rychlej%C5%A1%C3%AD_web_bez_zbyte%C4%8Dn%C3%BDch_dat:_co_re%C3%A1ln%C4%9B_zm%C4%9Bn%C3%AD%3F&amp;diff=199201</id>
		<title>Rychlejší web bez zbytečných dat: co reálně změní?</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Rychlej%C5%A1%C3%AD_web_bez_zbyte%C4%8Dn%C3%BDch_dat:_co_re%C3%A1ln%C4%9B_zm%C4%9Bn%C3%AD%3F&amp;diff=199201"/>
		<updated>2026-08-29T04:49:51Z</updated>

		<summary type="html">&lt;p&gt;EmilieGarth366: Created page with &amp;quot;Nakonec si nastavte proces zpětné vazby mezi testery a vývojáři. Každý nález by měl obsahovat kroky k reprodukci, očekávané a skutečné chování a screenshot či video. Bez toho se chyby ztrácejí nebo se opraví jen část problému. Pravidelně procházejte hlášení a přiřazujte prioritu podle dopadu na uživatele. Pokud nemáte vyhrazený tým testerů, určete, kdo z vývojářů převezme roli QA alespoň na část úvazku. Cílem není najít vš...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nakonec si nastavte proces zpětné vazby mezi testery a vývojáři. Každý nález by měl obsahovat kroky k reprodukci, očekávané a skutečné chování a screenshot či video. Bez toho se chyby ztrácejí nebo se opraví jen část problému. Pravidelně procházejte hlášení a přiřazujte prioritu podle dopadu na uživatele. Pokud nemáte vyhrazený tým testerů, určete, kdo z vývojářů převezme roli QA alespoň na část úvazku. Cílem není najít všechny chyby, ale ty, které by mohly poškodit dů[https://graph.org/Jak-strukturovat-verzov%C3%A1n%C3%AD-k%C3%B3du-pro-projekty-s-v%C3%ADce-verzemi-knihoven-08-12 osvětlení v obýváku]ěru uživatelů nebo vést k finanční ztrátě.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Co dělat, když je  i po optimalizaci souborů? Pokud jste zmenšili obrázky a sloučili kód, ale odezva je stále pomalá, podívejte se na odpovědi serveru. Hlavičky odpovědí by měly být nastaveny tak, aby si prohlížeč ukládal statické soubory do mezipaměti. To znamená, že při opakované návštěvě se soubory nestahují znovu. Ujistěte se, že máte správně nastavenou platnost mezipaměti a že se mění pouze tehdy, když změníte obsah souboru. Častou chybou je, že se mezipaměť vypne úplně kvůli špatnému testování – to pak vede k paradoxně pomalejšímu webu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nejčastější chyby při psaní aplikací a jak se jim vyhnout Jednou z nejčastějších chyb je přetížení hlavního vlákna. Veškerá práce s uživatelským rozhraním musí běžet na hlavním vlákně, ale když do něj vložíte náročné výpočty, aplikace zamrzne. Používejte asynchronní programování, konkrétně operace na pozadí a návrat na hlavní vlákno pomocí DispatchQueue.main. Další častou chybou je neřešení paměťových cyklů. Pokud používáte closures, které zachytávají self, riskujete zacyklení a únik paměti. Vždy deklarujte capture list s weak nebo unowned podle kontextu. A pozor na volitelné hodnoty – když je bezpečně nevynutíte, aplikace spadne. Používejte guard let nebo if let místo force unwrap.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Prvním krokem je redukce počtu požadavků na server. Každý soubor, ať jde o stylopis, skript nebo písmo, znamená samostatné komunikační kolo. Zkuste sloučit malé soubory do jednoho balíku, ale pozor na velikost – jeden obří soubor může být horší než pět menších. Zásadní je také pořadí načítání. Kritický obsah, který vidíte hned na první obrazovce, musí být načten přednostně. Vše ostatní, jako jsou analytické nástroje nebo posuvníky, nechte načíst až po interakci [https://Mensvault.men/story.php?title=jak-zohlednit-skryte-cinnosti-pri-odhadu-casu-na-vyvojovy-ukol uživatele]. K tomu slouží atribut pro odložené načítání skriptů, který běžně používáte.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[https://www.bbc.Co.uk/search/?q=Z%C3%A1kladn%C3%AD%20princip Základní princip] je jednoduchý: vytvoříte soubor, jehož název začíná na test_ nebo končí na _test.py, a do něj napíšete funkce začínající na test_. Každá taková funkce obsahuje tvrzení – nejčastěji pomocí assert. Pytest pak spustí všechny tyto funkce, vyhodnotí, [https://www.theepochtimes.com/n3/search/?q=kter%C3%A1%20tvrzen%C3%AD která tvrzení] neplatí, a podá přehledné hlášení. Například test, který ověřuje sčítání, vypadá takto: def test_scitani(): assert scitani(2, 3) == 5. Pokud funkce vrátí jinou hodnotu, test selže a vy hned víte, kde je problém.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další častý problém je testování na nesprávném zařízení. Ne každý má nejnovější model, takže otestujte aplikaci na starším zařízení s menším rozlišením a pomalejším procesorem. Zkuste také změnit velikost písma v systémovém nastavení nebo zapnout režim úspory baterie. Tyto faktory dokážou rozbít layout, který na vývojářském zařízení vypadá perfektně. Pozor i na orientaci obrazovky – přepnutí z portrétu na šířku by nemělo resetovat stav aplikace nebo ztratit data z formuláře.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Začněte u manuálního testování. Vezměte si reálné zařízení, ne jen emulátor. Emulátor neodhalí problémy s výkonem, které způsobí slabší hardware, ani neověří chování při přepínání mezi aplikacemi. Při ručním testu si napište scénáře, které pokrývají hlavní uživatelské cesty: registrace, přihlášení, platba, synchronizace dat. Typická chyba je testovat jen „šťastnou cestu&amp;quot; – tedy bez chybových stavů. Zkuste zadat špatné heslo, přerušit připojení nebo odejít z obrazovky uprostřed operace. To je místo, kde se většina chyb skutečně schovává.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec se zaměřte na to, co se děje při samotném zobrazování stránky. Pokud používáte hodně externích skriptů, které blokují vykreslení, prohlížeč čeká, až se načtou, a teprve poté ukáže stránku. To je nejhorší scénář. Řešením je načítat tyto skripty asynchronně, aby vykreslení neblokovaly. Typickým příkladem jsou chaty, widgety nebo mapy. Zkuste si srovnat, co je pro vaše návštěvníky skutečně důležité, a co je jen nadbytečná dekorace. Po každém odstranění jednoho zbytečného prvku znovu změřte rychlost. Nárůst rychlosti v řádu desetin sekundy je vidět i v uživatelských statistikách – okamžitě se projeví na nižším počtu opuštěných stránek.&lt;/div&gt;</summary>
		<author><name>EmilieGarth366</name></author>
	</entry>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=Kdy%C5%BE_se_k%C3%B3d_%C4%8Dte_s%C3%A1m,_aneb_jak_se_vyhnout_%C5%A1patn%C3%BDm_n%C3%A1vyk%C5%AFm&amp;diff=198877</id>
		<title>Když se kód čte sám, aneb jak se vyhnout špatným návykům</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Kdy%C5%BE_se_k%C3%B3d_%C4%8Dte_s%C3%A1m,_aneb_jak_se_vyhnout_%C5%A1patn%C3%BDm_n%C3%A1vyk%C5%AFm&amp;diff=198877"/>
		<updated>2026-08-29T04:38:12Z</updated>

		<summary type="html">&lt;p&gt;EmilieGarth366: Created page with &amp;quot;Kdy NoSQL použít a na co si dát pozor Největší výhodu NoSQL využijete, když potřebujete škálovat na více serverů. SQL databáze se obtížně rozdělují na víc uzlů, protože musí zajistit konzistenci transakcí. Naproti tomu NoSQL systémy, jako jsou dokumentové nebo key-value databáze, jsou navrženy pro horizontální škálování. To se hodí u e-shopů s velkou návštěvností, herních aplikací nebo IoT zařízení, která generují miliony z...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kdy NoSQL použít a na co si dát pozor Největší výhodu NoSQL využijete, když potřebujete škálovat na více serverů. SQL databáze se obtížně rozdělují na víc uzlů, protože musí zajistit konzistenci transakcí. Naproti tomu NoSQL systémy, jako jsou dokumentové nebo key-value databáze, jsou navrženy pro horizontální škálování. To se hodí u e-shopů s velkou návštěvností, herních aplikací nebo IoT zařízení, která generují miliony záznamů. Pokud ale provozujete malou interní aplikaci s pár uživateli, horizontální škálování nevyužijete a SQL vám poskytne jednodušší dotazování a robustnější záruky integrity.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Na závěr jeden praktický detail: pokud používáte Express 4 a výše, mějte na paměti, že asynchronní chyby v middleware nejsou automaticky předány error handleru. Proto si vytvořte wrapper asyncHandler(fn), který funkci obalí a případnou chybu pošle do next(). Tento malý trik vám ušetří spoustu záhadných 500 chyb. Stejně tak se vyplatí odlišit vlastní chyby (např. NotFoundError) od neočekávaných – v error handleru pak můžete vracet správný HTTP status. Pokud začnete tyto postupy používat, API bude čitelnější, snadněji se udržuje a hlavně – frontend vývojáři vám poděkují.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Při práci s třídami a dědičností můžete narazit na problém s modifikátory přístupu. TypeScript podporuje public, private a protected. Mnoho vývojářů ale zapomíná, že private je čistě záležitost kompilace – v běhovém prostředí se stejně chová jako veřejná vlastnost. Pro skutečné zapouzdření použijte JavaScriptové #, které je nativně podporované. Kombinace obojího je ale zbytečná, vyberte si jeden přístup a držte se ho.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Konfigurace tsconfig.json a typové úzké hrdlo Při zakládání projektu vás čeká soubor tsconfig.json. Nastavte si v něm strict na true. Tato volba zapne všechny přísné kontroly, které vás donutí psát bezpečnější kód. Bez strict režimu vám TypeScript dovolí příliš mnoho nejasností, a pak se divíte, proč vám létají chyby v produkci. Další užitečná volba je noImplicitAny, která zakáže nezamýšlené any. Pokud používáte moderní bundlery, doporučuji target nastavit na ES2020 nebo vyšší, abyste využili nativní async/await a další vymoženosti.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Dalším problémem je nadměrné používání globálních proměnných. I když JavaScript umožňuje cokoliv přiřadit na window, taková proměnná se snadno přepíše a těžko se hledá. Místo toho zapouzdřete logiku do modulů nebo tříd a globální stav omezte na minimum. Když už musíte sdílet data, použijte explicitní předávání parametrů nebo nějaký stavový kontejner. Tím se snižuje riziko, že vám nějaká část kódu změní hodnotu, kterou potřebujete jinde.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když přijdete z čistého JavaScriptu, může TypeScript působit jako zbytečná byrokracie. Ale první týden vývoje vám ukáže pravý opak. TypeScript není nový jazyk, ale nadstavba, která přidává typy do existujícího kódu. Díky tomu odhalíte chyby už při psaní, ne až při běhu v prohlížeči. Například místo abyste hledali, proč funkce vrací undefined, vám kompilátor řekne, že parametr nemá povolenou hodnotu null.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec si rozmyslete, jestli chcete projekt spravovat sám, nebo s komunitou. Licence neřeší jen právní rámec, ale i to, jak snadno lidé přispějí. Pokud máte jasno, přidejte do souborů hlavičky, vytvořte soubor s licencí a do readme napište, že je projekt otevřený. Tím se vyhnete budoucím sporům a usnadníte ostatním orientaci. Nejste první, kdo si touto otázkou prochází – podívejte se na podobné projekty a zjistěte, jakou licenci zvolily a proč. Teprve pak uděláte rozhodnutí, které bude odpovídat vašim cílům.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Psát čistý kód není o psaní méně řádků, ale o tom, aby se v něm druhý programátor (nebo vy za půl roku) dokázal rychle zorientovat. Základním pravidlem je, že kód by měl být čitelný bez dlouhého přemýšlení. To znamená dát přednost explicitnímu pojmenování proměnných a funkcí před zkratkami, které šetří pár znaků, ale komplikují pochopení. Typickým příkladem je použití názvů jako data, temp nebo x tam, kde by stačilo userList nebo formattedDate. Čitelnost se vždycky vyplatí víc než kratší zápis.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když se řekne databáze, většině vývojářů se vybaví tabulky s řádky a sloupci, tedy klasický SQL. Jenže moderní aplikace často pracují s daty, která se do pevné struktury nevejdou – třeba s dokumenty, grafy nebo časovými řadami. Právě pro tyto případy existuje NoSQL. Nejedná se o jednu technologii, ale o rodinu databází, které se liší způsobem ukládání i dotazování. Než se do NoSQL pustíte, je důležité pochopit, kdy dává smysl a kdy naopak zvolit osvědčený SQL.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec si dejte pozor na spolupráci s knihovnami, které nemají typy. Místo abyste psali deklaraci pro celý modul, stačí vytvořit soubor d.ts s minimálním popisem. Ale pozor, přehnané používání declare module &#039;něco&#039; může zamaskovat skutečné chyby. Pokud knihovna typy nemá, zvažte, jestli ji opravdu potřebujete. TypeScript vás tak nutí přemýšlet o vašich závislostech víc, než jste zvyklí. A to je dobře.&lt;/div&gt;</summary>
		<author><name>EmilieGarth366</name></author>
	</entry>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=User:EmilieGarth366&amp;diff=198876</id>
		<title>User:EmilieGarth366</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=User:EmilieGarth366&amp;diff=198876"/>
		<updated>2026-08-29T04:38:09Z</updated>

		<summary type="html">&lt;p&gt;EmilieGarth366: Created page with &amp;quot;Autor blogu světem interiérů žije už dlouho. Píšu o tom, jak zvládnout domácnost bez stresu. Nejraději hledat cesty, jak si usnadnit život.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor blogu světem interiérů žije už dlouho. Píšu o tom, jak zvládnout domácnost bez stresu. Nejraději hledat cesty, jak si usnadnit život.&lt;/div&gt;</summary>
		<author><name>EmilieGarth366</name></author>
	</entry>
</feed>