<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl">
	<id>https://jak.mazovia.edu.pl/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ChristopherShear</id>
	<title>Mazovia - Wkład użytkownika [pl]</title>
	<link rel="self" type="application/atom+xml" href="https://jak.mazovia.edu.pl/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ChristopherShear"/>
	<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php/Specjalna:Wk%C5%82ad/ChristopherShear"/>
	<updated>2026-10-01T22:26:33Z</updated>
	<subtitle>Wkład użytkownika</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://jak.mazovia.edu.pl/index.php?title=4_z%C3%A1klady_HTML_a_CSS,_kter%C3%A9_rozhoduj%C3%AD_o_funk%C4%8Dnosti_str%C3%A1nky&amp;diff=861679</id>
		<title>4 základy HTML a CSS, které rozhodují o funkčnosti stránky</title>
		<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php?title=4_z%C3%A1klady_HTML_a_CSS,_kter%C3%A9_rozhoduj%C3%AD_o_funk%C4%8Dnosti_str%C3%A1nky&amp;diff=861679"/>
		<updated>2026-10-01T18:32:13Z</updated>

		<summary type="html">&lt;p&gt;ChristopherShear: Utworzono nową stronę &amp;quot;Co hlídat při vydávání a ukládání Access token držte krátký, v řádu minut. Refresh token ukládejte jako serverovou relaci s možností odvolání, ne jako další JWT bez stavu. Do payloadu nepatří hesla, rodná čísla ani interní identifikátory, které nechcete ukázat. Pamatujte, že payload je jen base64, nikoli šifra. Pokud potřebujete skrýt obsah, použijte JWE, nebo raději držte citlivá data na serveru a do tokenu dejte pouze odkaz.&amp;lt;b…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Co hlídat při vydávání a ukládání Access token držte krátký, v řádu minut. Refresh token ukládejte jako serverovou relaci s možností odvolání, ne jako další JWT bez stavu. Do payloadu nepatří hesla, rodná čísla ani interní identifikátory, které nechcete ukázat. Pamatujte, že payload je jen base64, nikoli šifra. Pokud potřebujete skrýt obsah, použijte JWE, nebo raději držte citlivá data na serveru a do tokenu dejte pouze odkaz.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Každá webová stránka stojí na dvou jazycích. HTML určuje obsah a strukturu, CSS řeší vzhled a rozložení. Bez správného HTML je CSS k ničemu a naopak. Začátečníci často skáčou rovnou k barevným tlačítkům, ale přeskakují základy, které později bolí. Tady jsou čtyři oblasti, které rozhodují o tom, jestli stránka funguje, nebo se rozsype.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Emulátor nestačí, sežeňte si skutečný telefon Emulátor je pohodlný, ale chová se jinak než reálné zařízení. Některé funkce, třeba práce s fotoaparátem nebo čidly, v emulátoru nefungují spolehlivě nebo vůbec. Připojte si do počítače běžný telefon, zapněte v něm vývojářský režim a povolte instalaci z počítače. Naučte se aplikaci nasadit přímo do telefonu a číst chybové výpisy. Právě na skutečném zařízení nejrychleji odhalíte chyby, které by vás jinak překvapily až u uživatelů.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nasazení oddělte od testování. Jeden workflow, který po každém pushe do hlavní větve rovnou nasadí na produkci, je rychlá cesta k výpadku. Lepší je nechat testy běžet na každý push a nasazení vázat na větev, tag nebo ruční schválení. Do pipeline přidejte i kontrolu, že se běh dokončil v rozumném čase — tichý běh, který visí hodinu, blokuje frontu a odrazuje od častých commitů.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Začněte jednotným formátem odpovědí. Každé volání by mělo vracet stejnou obálku: data, stavový kód, případně seznam chyb. U chyb vždy uvádějte strojově čitelný kód, lidsky čitelnou zprávu a pole, kterého se týká. Vyhněte se tomu, aby jedna chyba vracela řetězec a jiná objekt. Frontend pak nemusí řešit desítky variant a stačí mu jedna funkce pro zpracování odpovědi.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Dokumentace REST API není popis toho, co jsme naprogramovali, ale smlouva mezi backendem a frontendem. Pokud si ji backend i frontend vyloží jinak, vznikají chyby, které se hledají těžko. Cílem je, aby se vývojář na frontendu dozvěděl z dokumentace vše potřebné bez ptaní a aby se kontrakt nezměnil, aniž by si toho někdo všiml.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Rozložení dnes řešte pomocí flexboxu a gridu. Oba nástroje zvládají zarovnání i roztažení obsahu bez pevných šířek. Nepoužívejte plovoucí prvky pro celkovou stavbu stránky, na to už dávno nejsou potřeba. Box model je další kámen úrazu. Šířka prvku se standardně počítá včetně paddingu a borderu až po nastavení box-sizing. Nastavte jej globálně na border-box pro všechny prvky. Ušetříte si překvapení, kdy se sloupec nevejde vedle druhého.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Základem je nainstalovat si vývojové prostředí a pochopit, jak se projekt sestavuje. Většina začátečníků dnes používá některé z volně dostupných prostředí postavených na jazyce Kotlin, který je pro nové projekty doporučovaný. Nainstalujte ho, vytvořte prázdný projekt a spusťte ho na emulátoru. Teprve pak zkuste přidat tlačítko a textové pole. Pokud přeskočíte tento krok a rovnou se pustíte do složité aplikace, budete později tápat v tom, co která část kódu dělá.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Základem je ověřit podpis přesně tím algoritmem, který očekáváte. Nikdy nenechávejte knihovnu, aby si algoritmus vybrala podle hlavičky alg z tokenu. Pokud aplikace podporuje HS256 i RS256, musíte dopředu rozhodnout, který použijete, a ostatní odmítnout. Zvlášť nebezpečná je kombinace, kdy se veřejný klíč z RS256 dá podstrčit jako HMAC secret. Vždy porovnávejte iss, aud a exp; token bez expirace je jen trvalý přístupový klíč v cizích rukou.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Sémantické tagy místo divů Místo desítek divů používejte tagy, které nesou význam: header, nav, main, section, article, footer. Vyhledávače i čtečky obrazovky z nich lépe pochopí, co je na stránce důležité. Divy si nechte na čistě vizuální obaly. Další častá chyba je vnořování tagů do sebe bez rozmyslu. Nadpis první úrovně patří na stránku jednou, další nadpisy tvoří logickou hierarchii. Když ji přeskočíte, snižujete přístupnost i srozumitelnost obsahu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další častou chybou je ignorování životního cyklu obrazovky. Aplikace není jen to, co vidíte na displeji. Když uživatel přijme hovor nebo otočí telefon, obrazovka se může znovu vytvořit a vaše data se ztratí. Učte se od začátku ukládat stav a reagovat na události, které systém posílá. Ověřujte chování při otočení, při přechodu na jinou obrazovku a při návratu zpět. Teprve pak začněte řešit vzhled.&lt;/div&gt;</summary>
		<author><name>ChristopherShear</name></author>
	</entry>
	<entry>
		<id>https://jak.mazovia.edu.pl/index.php?title=U%C5%BCytkownik:ChristopherShear&amp;diff=861675</id>
		<title>Użytkownik:ChristopherShear</title>
		<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php?title=U%C5%BCytkownik:ChristopherShear&amp;diff=861675"/>
		<updated>2026-10-01T18:32:12Z</updated>

		<summary type="html">&lt;p&gt;ChristopherShear: Utworzono nową stronę &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ě. Nejvíc mě baví popisovat postupy krok za krokem.&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ě. Nejvíc mě baví popisovat postupy krok za krokem.&lt;/div&gt;</summary>
		<author><name>ChristopherShear</name></author>
	</entry>
</feed>