<?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=BelleBaumgartner</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=BelleBaumgartner"/>
	<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Special:Contributions/BelleBaumgartner"/>
	<updated>2026-09-04T22:38:19Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=Kdy_zvolit_REST_a_kdy_GraphQL%3F_Rozhoduj%C3%ADc%C3%AD_faktory&amp;diff=199667</id>
		<title>Kdy zvolit REST a kdy GraphQL? Rozhodující faktory</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Kdy_zvolit_REST_a_kdy_GraphQL%3F_Rozhoduj%C3%ADc%C3%AD_faktory&amp;diff=199667"/>
		<updated>2026-08-29T05:08:43Z</updated>

		<summary type="html">&lt;p&gt;BelleBaumgartner: Created page with &amp;quot;UI/UX pro vývojáře není o tom stát se designérem. Jde o to, abyste při psaní kódu mysleli na lidské chování. Dobrá aplikace je taková, kterou uživatel nemusí studovat. Když odstraníte tření mezi záměrem a akcí, uživatel se vrací sám a vy nemusíte řešit stížnosti na podpoře. Začněte u nejčastějšího scénáře, opravte nejkřiklavější chyby a postupně vylepšujte. Tento přístup se vám vrátí vyšší spokojeností i nižšími...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;UI/UX pro vývojáře není o tom stát se designérem. Jde o to, abyste při psaní kódu mysleli na lidské chování. Dobrá aplikace je taková, kterou uživatel nemusí studovat. Když odstraníte tření mezi záměrem a akcí, uživatel se vrací sám a vy nemusíte řešit stížnosti na podpoře. Začněte u nejčastějšího scénáře, opravte nejkřiklavější chyby a postupně vylepšujte. Tento přístup se vám vrátí vyšší spokojeností i nižšími náklady na vývoj.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další věc, na kterou se zaměřit, je verzování API. U REST běžně verzujete pomocí URL (např. /v1/), u GraphQL se verzování obvykle řeší postupnými změnami schématu bez ostrých řezů. To je výhoda, ale jen pokud vaše týmová komunikace funguje dobře. Pokud máte externí partnery, kteří na vašem API staví, GraphQL může být problematický – změny v schématu mohou nenápadně rozbít jejich aplikace. REST s číslovanými verzemi dává jasný signál, že se něco mění.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pokud chcete rychle zjistit, kde uživatele ztrácíte, sledujte jednoduchou metriku: čas dokončení klíčového úkolu. Požádejte tři osoby, ať provedou hlavní scénář (např. registrace), a pozorujte, kde váhají. Často zjistíte, že problém není v kódu, ale v nejasném popisku, špatně zvoleném výchozím stavu formuláře nebo schovaném tlačítku. Oprava těchto drobností obvykle zabere hodiny, ne dny, a výsledek je okamžitě znát.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Dalším častým kamenem úrazu je ignorování stavu prázdného obsahu. Když uživatel otevře novou aplikaci a žádná data tam nejsou, neměla by tam být jen bílá obrazovka. Dejte mu instrukci, co má dělat – třeba „Zatím zde nejsou žádné záznamy, klikněte na tlačítko Přidat&amp;quot;. Podobně řešte načítání: místo „spinneru&amp;quot; na několik sekund zobrazte kostru stránky, která naznačí budoucí strukturu. Uživatel má pocit, že se něco děje, a je ochotnější počkat.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Důležité je také myslet na chytré výchozí hodnoty a předvyplnění. Pokud uživatel zadává adresu, nabídněte mu automatické doplnění. Pokud vyplňuje datum, zobrazte kalendář s dnešním dnem jako výchozím. Každé ušetřené kliknutí zvyšuje šanci, že formulář dokončí. Naopak se vyhněte zbytečným povinným polím – každé navíc je důvod k opuštění stránky. Zeptejte se sami sebe: co se stane, když toto pole nebude vyplněné? Pokud nic zásadního, zrušte ho.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Práce s daty na pozadí je další past. Volání síťových požadavků nebo čtení z databáze by nikdy nemělo blokovat hlavní vlákno. Používejte async/await, které je v moderním Swiftu přirozené, a nezapomeňte na správu kontextu – každý task musí mít jasný životní cyklus. Častou chybou je zapomenout na korektní zrušení úlohy při opuštění obrazovky, což vede k únikům paměti. Vždy si proto definujte, co se stane, když uživatel rychle přejde na jinou obrazovku, a testujte i nešťastné scénáře, nejen happy path.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Užitečným nástrojem je takzvaný „test coverage&amp;quot; pro určení kritických částí. Nemusíte dosáhnout stoprocentního pokrytí – pokrytí 70–80 % klíčové obchodní logiky je obvykle rozumné. Důležitější je zaměřit se na rizikové části: platby, oprávnění uživatelů, zpracování souborů. Pokud máte v těchto místech slabé pokrytí, doplňte testy i za cenu, že jinde jich ubude. Pravidelně kontrolujte, které testy se nejčastěji mění. Pokud některý test upravujete při každé implementaci funkce, pravděpodobně testuje příliš mnoho nebo je špatně navržený.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Konzistence a zpětná vazba jsou levnější než zákaznická podpora Uživatel se v aplikaci učí za pochodu. Pokud jedno tlačítko vypadá jako odkaz a druhý odkaz jako tlačítko, vzniká chaos. Držte se jednoduchých pravidel: klikatelné prvky mají vizuálně naznačenou interakci (změna barvy, stín, podtržení), a to jednotně napříč celou aplikací. Stejně důležitá je rychlá zpětná vazba po každé akci. Po uložení dat se musí objevit potvrzení, po chybě srozumitelná hláška, která říká, co se stalo a jak to opravit. Nikdy nepoužívejte jen technické chybové kódy typu „HTTP 500&amp;quot; – uživatel s nimi nic neudělá.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;GraphQL řeší právě problém „příliš mnoho requestů&amp;quot; tím, že umožňuje v jednom dotazu získat přesně ta data, která potřebujete, a nic navíc. To oceníte u mobilních aplikací s omezeným datovým tarifem nebo u komplexních dashboardů, kde se kombinují data z různých částí systému. Místo aby server diktoval, co klient dostane, klient si definuje tvar odpovědi. Typickým příkladem je eshop, kde chcete zobrazit produkt, jeho varianty a skladové zásoby najednou – s GraphQL to zvládnete jedním voláním, s REST byste museli tři.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Na co nezapomenout při správě stavu a dat Správa stavu je nejčastějším místem, kde začínající vývojáři chybují. Místo abyste si vystačili s @State a @Binding, snaží se stav ukládat do globálních proměnných, což vede k nepředvídatelnému chování. Pro větší projekty použijte ObservableObject a @Published, případně sáhněte po architektonickém vzoru, který vám vyhovuje – ať už je to MVVM, Redux, nebo jednodušší ViewState. Důležité je, aby data proudila jedním směrem, a abyste měli jediný zdroj pravdy. To vám ušetří hodiny ladění, když se aplikace začne chovat nelogicky.&lt;/div&gt;</summary>
		<author><name>BelleBaumgartner</name></author>
	</entry>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=User:BelleBaumgartner&amp;diff=199666</id>
		<title>User:BelleBaumgartner</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=User:BelleBaumgartner&amp;diff=199666"/>
		<updated>2026-08-29T05:08:38Z</updated>

		<summary type="html">&lt;p&gt;BelleBaumgartner: Created page with &amp;quot;Váš průvodce dílnou i obývákem žije už dlouho. Píšu o tom, jak si poradit v malém bytě. Nejraději hledat cesty, jak si usnadnit život.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Váš průvodce dílnou i obývákem žije už dlouho. Píšu o tom, jak si poradit v malém bytě. Nejraději hledat cesty, jak si usnadnit život.&lt;/div&gt;</summary>
		<author><name>BelleBaumgartner</name></author>
	</entry>
</feed>