<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki-babylonsignalis.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=WilfordBurgett4</id>
	<title>Babylon SIGNALIS Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-babylonsignalis.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=WilfordBurgett4"/>
	<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php/Special:Contributions/WilfordBurgett4"/>
	<updated>2026-09-15T19:07:47Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki-babylonsignalis.org/index.php?title=Jak_ps%C3%A1t_smyslupln%C3%A9_commit_zpr%C3%A1vy_pro_snadnou_zp%C4%9Btnou_dohledatelnost&amp;diff=133402</id>
		<title>Jak psát smysluplné commit zprávy pro snadnou zpětnou dohledatelnost</title>
		<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php?title=Jak_ps%C3%A1t_smyslupln%C3%A9_commit_zpr%C3%A1vy_pro_snadnou_zp%C4%9Btnou_dohledatelnost&amp;diff=133402"/>
		<updated>2026-08-21T18:42:17Z</updated>

		<summary type="html">&lt;p&gt;WilfordBurgett4: Created page with &amp;quot;Další pastí je očekávání, že NoSQL automaticky vyřeší výkon. Pravda je, že výkon závisí na správném návrhu klíčů a indexů. V dokumentových databázích se často používá kompozitní klíč, který obsahuje více polí – třeba uživatelské ID a časovou značku. Bez něj budete skenovat celou kolekci, což je pomalé. Před nasazením si ověřte, jak databáze zpracovává dotazy bez indexu a porovnejte to s dotazem s indexem. Rozdíl můž...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Další pastí je očekávání, že NoSQL automaticky vyřeší výkon. Pravda je, že výkon závisí na správném návrhu klíčů a indexů. V dokumentových databázích se často používá kompozitní klíč, který obsahuje více polí – třeba uživatelské ID a časovou značku. Bez něj budete skenovat celou kolekci, což je pomalé. Před nasazením si ověřte, jak databáze zpracovává dotazy bez indexu a porovnejte to s dotazem s indexem. Rozdíl může být stonásobný.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Při přechodu ze SQL na NoSQL se vyhněte pokušení kopírovat relační model 1:1. V dokumentové databázi je normální denormalizace – data, která čtete společně, ukládáte společně. Například objednávku s položkami a adresou uložíte jako jeden dokument. Není potřeba joinovat tři tabulky. Naopak, pokud často měníte adresu zákazníka a potřebujete ji konzistentní ve všech objednávkách, denormalizace způsobí problémy. Musíte sami řídit konzistenci při aktualizaci, což je častý zdroj chyb.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec se vždy ptejte sami sebe: Pochopím tuto zprávu za tři měsíce? Pokud ne, doplňte chybějící informace. A vyhněte se emocionálním výlevům, vtipům nebo poznámkám, které nesouvisejí s problémem. Commit zpráva je profesionální dokument, ne chatovací zpráva. Dodržováním těchto zásad získáte historii, která se stane spolehlivým nástrojem pro analýzu chyb i plánování dalšího vývoje.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;SQL injection patří mezi nejčastější a nejnebezpečnější zranitelnosti webových aplikací. Útočník využívá nedostatečné ošetření uživatelských vstupů k tomu, aby do SQL dotazu vložil vlastní příkazy. Díky tomu může číst, měnit nebo mazat data v databázi, obejít přihlášení nebo dokonce převzít kontrolu nad serverem. Prevence přitom není složitá, vyžaduje ale důslednost při psaní každého dotazu, který pracuje s uživatelskými daty.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pozor si dejte i na méně obvyklá místa, kde se SQL injection může schovat. Často se zapomíná na HTTP hlavičky, cookies nebo soubory nahrané uživatelem. Tyto hodnoty také procházejí aplikací a mohou skončit v databázi. Vždy je ošetřete stejně jako formulářová pole. Dále myslete na chybové hlášky – nikdy nevracejte uživateli detailní výpis SQL chyby. Útočník by z něj získal informace o struktuře databáze. Místo toho logujte chyby do souboru a uživateli zobrazte neutrální hlášení.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Důležité je také zmenšit velikost kódu, který posíláte. Odstraňte z CSS a JavaScriptu mezery, komentáře a nevyužité pravidla. Tento proces se nazývá minifikace a výrazně zkrátí dobu stahování. U JavaScriptu navíc zvažte, zda je opravdu nutné ho načítat hned na začátku. Pokud skript slouží až pro interakce po načtení stránky, umístěte ho na konec těla dokumentu nebo použijte atribut defer. Typickou chybou je zbytečné načítání více knihoven, které dělají totéž.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pozor si dejte také na počet požadavků na server. Každý soubor, který se stahuje, vytváří samostatný požadavek, a to i v případě, že je malý. Spojte více CSS souborů do jednoho, a pokud je to možné, slučte i malé obrázky do tzv. sprite nebo je nahraďte ikonovým fontem. Naopak velké soubory, které se používají jen na některých stránkách, rozdělte tak, aby se nenačítaly všude. Nezapomeňte také na rychlost serveru – sdílený hosting může být limitující, ale i tam jde omezit zátěž pomocí statické generace stránek.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;SQL injection není problém, který by se dal vyřešit jednou provždy. Vyžaduje průběžnou pozornost a kódování s ohledem na bezpečnost. Při každém novém dotazu se zeptejte, zda obsahuje uživatelský vstup, a pokud ano, použijte parametrizaci. Pravidelně aktualizujte databázové ovladače a frameworky, které často obsahují opravy známých zranitelností. Investice do prevence se mnohonásobně vrátí, protože náklady na řešení úniku dat jsou obvykle výrazně vyšší než čas strávený psaním bezpečného kódu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Základním krokem je správná komprese obrázků. Používejte moderní formáty jako WebP nebo AVIF, které mají výrazně menší objem než běžné JPEG či PNG. Pro fotografie zvolte kompresi s rozumným poměrem kvality a velikosti, u grafiky a ikon zase zvažte SVG. Nezapomínejte na atributy šířky a výšky, abyste předešli posunům rozložení při načítání. Pokud máte na stránce hodně fotek, zaveďte tzv. líné načítání, tedy načítání až ve chvíli, kdy se k obrázku uživatel posune.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pravidelně testujte aplikaci na zranitelnosti. Používejte automatizované skenery i manuální testy, které zahrnují vkládání speciálních znaků do všech vstupních polí. Zkuste do formulářů zadat obyčejný apostrof a sledujte, zda aplikace vyhodí chybu. Pokud ano, nezanedbávejte to – je to signál, že někde dochází k nedostatečnému ošetření. Dbejte také na to, aby databázový účet používaný aplikací měl pouze nezbytná oprávnění. Oddělte přístup pro čtení, zápis a správu. Tím omezíte škody, pokud k průniku dojde.&lt;/div&gt;</summary>
		<author><name>WilfordBurgett4</name></author>
	</entry>
	<entry>
		<id>https://wiki-babylonsignalis.org/index.php?title=User:WilfordBurgett4&amp;diff=133401</id>
		<title>User:WilfordBurgett4</title>
		<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php?title=User:WilfordBurgett4&amp;diff=133401"/>
		<updated>2026-08-21T18:42:14Z</updated>

		<summary type="html">&lt;p&gt;WilfordBurgett4: Created page with &amp;quot;Váš průvodce praktickým bydlením žije už dlouho. Sdílím zde, jak si poradit v malém bytě. Nejraději popisovat postupy krok za krokem.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Váš průvodce praktickým bydlením žije už dlouho. Sdílím zde, jak si poradit v malém bytě. Nejraději popisovat postupy krok za krokem.&lt;/div&gt;</summary>
		<author><name>WilfordBurgett4</name></author>
	</entry>
</feed>