<?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=MauraStLedger5</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=MauraStLedger5"/>
	<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php/Specjalna:Wk%C5%82ad/MauraStLedger5"/>
	<updated>2026-09-25T20:23:23Z</updated>
	<subtitle>Wkład użytkownika</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://jak.mazovia.edu.pl/index.php?title=P%C5%99echod_z_MySQL_na_PostgreSQL,_kter%C3%BD_nepodcen%C3%ADte&amp;diff=233049</id>
		<title>Přechod z MySQL na PostgreSQL, který nepodceníte</title>
		<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php?title=P%C5%99echod_z_MySQL_na_PostgreSQL,_kter%C3%BD_nepodcen%C3%ADte&amp;diff=233049"/>
		<updated>2026-08-29T03:19:58Z</updated>

		<summary type="html">&lt;p&gt;MauraStLedger5: Utworzono nową stronę &amp;quot;Příklady jsou důležitější než popis parametrů Místo strohého seznamu atributů uveďte konkrétní příklad požadavku a odpovědi. Ukažte reálný JSON, ideálně s hodnotami, které odpovídají skutečným datům – ne „string&amp;quot;, ale „název produktu&amp;quot;. Přidejte i příklad chybové odpovědi, ať frontend ví, co má očekávat. Dobře funguje i krátký úryvek volání z javascriptu, ale bez nadbytečných knihoven – stačí fetch s hlavič…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Příklady jsou důležitější než popis parametrů Místo strohého seznamu atributů uveďte konkrétní příklad požadavku a odpovědi. Ukažte reálný JSON, ideálně s hodnotami, které odpovídají skutečným datům – ne „string&amp;quot;, ale „název produktu&amp;quot;. Přidejte i příklad chybové odpovědi, ať frontend ví, co má očekávat. Dobře funguje i krátký úryvek volání z javascriptu, ale bez nadbytečných knihoven – stačí fetch s hlavičkami. Tyto příklady by měly být kompletní a zkopírovatelné, aby si je vývojář mohl rovnou vložit do konzole a vyzkoušet.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Zkontrolujte také, kolikrát načítáte stejné soubory. Častý nešvar je vložit jQuery do hlavičky, pak ho znovu do patičky a ještě jednou do šablony. Prohlížeč sice soubor stáhne jen jednou, ale kód se pokaždé znovu zpracuje. Použijte nástroj pro kontrolu zdrojového kódu a vyhledejte duplicity. U externích fontů si dejte pozor na to, kolik řezů načítáte. Čtyři řezy písma znamenají čtyři soubory, přičemž pro běžný text stačí dva. Fonty navíc nechte načítat až po načtení hlavního obsahu, ať neblokují první vykreslení.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Při testování výkonu se zaměřte na spotřebu paměti a baterie. Spusťte aplikaci, projděte několik obrazovek a vraťte se na hlavní. Sledujte, jestli paměť roste a jestli aplikace nezpomaluje. Pro měření využijte nástroje přímo v operačním systému, ale hlavně si všímejte subjektivního dojmu – dlouhé načítání nebo sekání při scrollování je pro uživatele nepřijatelné. Typická chyba je optimalizovat výkon až na konci, ale to už je aplikace plná závislostí, které se špatně mění.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Než otevřete vývojové prostředí, rozhodněte se, jakou cestou se vydáte. Nejrozšířenější je Kotlin, který je moderní a stručný, ale pro úplného začátečníka může být matoucí kvůli syntaxi, která skrývá mnoho detailů. Já osobně doporučuji začít s Javou – má obrovské množství starších tutoriálů a chybové hlášky jsou srozumitelnější. Když pochopíte základy objektového přístupu v Javě, přechod na Kotlin pak trvá pár dní. Naopak pokud začnete přímo Kotlinem, riskujete, že nebudete rozumět, proč některé věci fungují tak, jak fungují.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jak poznáte, že je na vině JavaScript? JavaScript dokáže zablokovat vykreslení celé stránky. Pokud máte v hlavičce několik externích skriptů, prohlížeč čeká, až se každý stáhne a spustí, teprve potom zobrazí obsah. Řešení spočívá v jednoduché změně pořadí: skripty, které nejsou nezbytné pro první obrazovku, přesuňte na konec těla stránky. Když to nejde, použijte atribut defer, který zajistí, že se skript spustí až po zpracování HTML. Vyhněte se ale tomu, abyste na stránku nahrávali deset různých knihoven, když vám stačí dvě. Každý další soubor znamená další požadavek na server a další šanci na zpoždění.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další častou chybou je ignorování expirace tokenu. JWT obsahuje pole exp, ale pokud ho nenastavíte nebo nastavíte příliš dlouhou platnost, otevíráte dveře útočníkům, kteří ukradnou token a používají ho týdny. Nastavte expiraci na rozumnou dobu – obvykle 15 minut až několik hodin – a pro delší přístup použijte obnovovací tokeny, které mají vlastní životní cyklus a lze je bezpečně zneplatnit. Navíc vždy ověřujte nejen expiraci, ale i čas vydání (iat) a případně čas nepoužitelnosti (nbf), abyste zabránili použití tokenů, které ještě nebyly aktivovány.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pozor na častý neduh: dokumentace popisuje jen šťastnou cestu. Nikde se nepíše, co se stane, když přijde neplatné ID, chybějící povinné pole nebo příliš dlouhý řetězec. Frontend pak musí tyto situace pracně zjišťovat pokusy a omyly. Přidejte proto ke každému endpointu sekci „Možné chyby&amp;quot; s HTTP statusem a tvarem chybové odpovědi. Ušetří to hodiny práce a zbytečných dotazů na backend.&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;Víte, co děláte s claims a podpisem? Claims neboli tvrzení uvnitř tokenu byste měli vždy omezit na minimum. Nepoužívejte JWT jako úložiště citlivých údajů – role, oprávnění, e-maily, natož hesla nebo osobní údaje. Token je totiž podepsaný, ale ne šifrovaný; kdokoli, kdo ho získá, si ho může dekódovat a přečíst. Pokud potřebujete předávat informace, které mají zůstat důvěrné, použijte šifrovaný token JWE nebo lépe: přenášejte pouze identifikátor uživatele a zbytek si načtěte z databáze. Také si dejte pozor na to, co děláte s veřejným klíčem – pokud používáte RS256, veřejný klíč by měl být opravdu veřejný, ale nikdy ne privátní. Záměna klíčů je bohužel častá a vede k tomu, že útočník může podepisovat tokeny.&lt;/div&gt;</summary>
		<author><name>MauraStLedger5</name></author>
	</entry>
	<entry>
		<id>https://jak.mazovia.edu.pl/index.php?title=U%C5%BCytkownik:MauraStLedger5&amp;diff=233045</id>
		<title>Użytkownik:MauraStLedger5</title>
		<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php?title=U%C5%BCytkownik:MauraStLedger5&amp;diff=233045"/>
		<updated>2026-08-29T03:19:57Z</updated>

		<summary type="html">&lt;p&gt;MauraStLedger5: Utworzono nową stronę &amp;quot;Autor blogu světem interiérů sází na osvědčené tipy. Sdílím zde, jak skloubit funkčnost s teplem domova. 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ů sází na osvědčené tipy. Sdílím zde, jak skloubit funkčnost s teplem domova. Nejraději hledat cesty, jak si usnadnit život.&lt;/div&gt;</summary>
		<author><name>MauraStLedger5</name></author>
	</entry>
</feed>