<?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=CindaBurke8</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=CindaBurke8"/>
	<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php/Specjalna:Wk%C5%82ad/CindaBurke8"/>
	<updated>2026-11-05T22:14:29Z</updated>
	<subtitle>Wkład użytkownika</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://jak.mazovia.edu.pl/index.php?title=5_situac%C3%AD,_kdy_se_REST_API_a_GraphQL_chovaj%C3%AD_odli%C5%A1n%C4%9B&amp;diff=1042827</id>
		<title>5 situací, kdy se REST API a GraphQL chovají odlišně</title>
		<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php?title=5_situac%C3%AD,_kdy_se_REST_API_a_GraphQL_chovaj%C3%AD_odli%C5%A1n%C4%9B&amp;diff=1042827"/>
		<updated>2026-10-11T20:15:44Z</updated>

		<summary type="html">&lt;p&gt;CindaBurke8: Utworzono nową stronę &amp;quot;Migrace z MySQL do PostgreSQL není jen změna připojovacího řetězce. Oba systémy mají odlišnou filozofii: MySQL toleruje nejednoznačnosti, PostgreSQL je přísnější a vyžaduje přesné typy. Prvním krokem je proto inventura schématu. Zjistit, které tabulky používají ENGINE=MyISAM (nemají transakce), kde jsou uložené procedury, triggery a pohledy. Tyto objekty se nikdy nepřenesou automaticky a je nutné je přepsat ručně.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Mezi časté…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Migrace z MySQL do PostgreSQL není jen změna připojovacího řetězce. Oba systémy mají odlišnou filozofii: MySQL toleruje nejednoznačnosti, PostgreSQL je přísnější a vyžaduje přesné typy. Prvním krokem je proto inventura schématu. Zjistit, které tabulky používají ENGINE=MyISAM (nemají transakce), kde jsou uložené procedury, triggery a pohledy. Tyto objekty se nikdy nepřenesou automaticky a je nutné je přepsat ručně.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Mezi časté chyby patří testování pouze na nejnovější verzi systému, ignorování chování offline a opomenutí rotace displeje. Další problém je testování na zařízeních, která mají příliš mnoho aplikací na pozadí, takže výsledky neodpovídají realitě běžného uživatele. Vyplatí se také sledovat výkon: dobu startu, spotřebu paměti a plynulost posouvání. Pomalá aplikace působí dojmem chyby i tehdy, když logicky funguje správně.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Samotný přenos dat se dělá nejlépe přes CSV nebo generovaný SQL dump. Nástroje pro přímý převod často selžou na okrajových případech, proto je spolehlivější exportovat data z MySQL do textových souborů a načíst je přes příkaz COPY. Pozor na kódování: MySQL často používá latin1 nebo utf8mb3, zatímco PostgreSQL standardně utf8. Před exportem ověřte, že všechny řetězce jsou v UTF-8, jinak se diakritika rozsype. Datum a čas ukládejte včetně časové zóny, jinak přijdete o informaci.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Rozdíl mezi testováním na zařízení a v emulátoru Emulátor nebo simulátor urychlí vývoj, protože umožní rychlé spouštění a snadné ladění. Nikdy ale neodhalí problémy specifické pro konkrétní hardware, jako je přehřívání, přesnost dotyku nebo spotřeba baterie. Proto je nutné mít sadu reálných zařízení, i když menší. Rozumný přístup je testovat průběžně na jednom nebo dvou fyzických telefonech a zbývající kombinace verzí a velikostí displeje pokrýt pomocí cloudových zařízení nebo emulátorů.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pro datové vstupy použijte fixture soubory nebo továrny na testovací data. Místo ručního vytváření objektů v každém testu definujte šablony s výchozími hodnotami a v konkrétních testech měňte jen to, co je podstatné. Vazby mezi daty simulujte pomocí jednoduchých struktur, které respektují referenční integritu. Například místo skutečné databáze použijte kolekci v paměti, která se na začátku testu naplní a na konci vyčistí. Pokud testujete chování při výpadku, simulujte chyby – vyhoďte výjimku, nastavte časový limit nebo vracejte neúplná data.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Volba licence není otázkou ideologie, ale toho, jak chcete, aby se váš kód šířil a kdo ho může použít. Permisivní licence (MIT, Apache 2.0, BSD) říkají: dělej si s kódem, co chceš, jen zachovej atribuci. Copyleftové licence (GPL, AGPL, LGPL) naopak vyžadují, aby odvozená díla zůstala pod stejnou licencí. První krok je vždy stejný: napište si na papír, co od projektu očekáváte. Chcete maximální adopci? Chcete, aby váš kód nemohl někdo uzavřít a prodávat jako proprietární produkt? Odpověď určí směr.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Prvních pár minut v C# rozhoduje o tom, jestli tě programování chytne, nebo odradí. Většina začátečníků zbytečně tráví čas studiem teorie a pak narazí na to, že vlastně neumí spustit ani jednoduchý program. Přitom stačí nainstalovat .NET SDK a jeden editor. Bez SDK tvůj kód nepoběží, i kdybys měl sebelepší vývojové prostředí. Po instalaci si ověř v terminálu příkaz dotnet --version. Když vypíše číslo, máš vyhráno.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec se rozhodujte podle týmu a ekosystému. Pokud máte tým zvyklý na REST, knihovny a monitoring, přechod na GraphQL znamená učení a nové nástroje. Pokud stavíte klienta, který potřebuje rychle měnit pohledy na data, GraphQL může ušetřit spoustu práce. Často dává smysl kombinace: REST pro jednoduché a stabilní operace, GraphQL pro složité čtení. Vyberte podle konkrétních dotazů, ne podle toho, co je zrovna moderní.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Verzování a změny schématu řeší oba přístupy jinak. REST obvykle verzuje v URL nebo v hlavičce, GraphQL zavádí nová pole a stará označí jako deprecated. U RESTu se ale snadno stane, že klienti používají staré verze a vy je musíte držet dlouho. U GraphQL zase hrozí, že klient pošle dotaz na pole, které jste odstranili. Vždy zveřejněte pravidla, jak dlouho budou stará pole nebo verze fungovat, a mějte přehled o tom, kdo co volá.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Posledním krokem je testování. Nestačí, že se data načtou. Spusťte všechny aplikace proti nové databázi a porovnejte výsledky dotazů. Zaměřte se na řazení textu – MySQL má jiné implicitní collation než PostgreSQL, takže ORDER BY může vracet jiné pořadí. Zkontrolujte také výkon: PostgreSQL neumí INDEX na prvních N znacích jako MySQL, ale nabízí výkonnější částečné indexy. Po nasazení sledujte pomalé dotazy a podle potřeby dolaďte parametry work_mem a shared_buffers.&lt;/div&gt;</summary>
		<author><name>CindaBurke8</name></author>
	</entry>
	<entry>
		<id>https://jak.mazovia.edu.pl/index.php?title=U%C5%BCytkownik:CindaBurke8&amp;diff=1042825</id>
		<title>Użytkownik:CindaBurke8</title>
		<link rel="alternate" type="text/html" href="https://jak.mazovia.edu.pl/index.php?title=U%C5%BCytkownik:CindaBurke8&amp;diff=1042825"/>
		<updated>2026-10-11T20:15:43Z</updated>

		<summary type="html">&lt;p&gt;CindaBurke8: Utworzono nową stronę &amp;quot;Váš průvodce světem interiérů žije už dlouho. Sdílím zde, jak zvládnout domácnost bez stresu. Nejvíc mě baví hledat cesty, jak si usnadnit život.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Váš průvodce světem interiérů žije už dlouho. Sdílím zde, jak zvládnout domácnost bez stresu. Nejvíc mě baví hledat cesty, jak si usnadnit život.&lt;/div&gt;</summary>
		<author><name>CindaBurke8</name></author>
	</entry>
</feed>