Jak zkrotit rozvržení stránek pomocí CSS Grid a Flexboxu

Z Mazovia
Wersja z dnia 18:41, 21 sie 2026 autorstwa ChauBynum247283 (dyskusja | edycje) (Utworzono nową stronę "Při práci s funkcemi si osvojte volitelné parametry (znak ?) a výchozí hodnoty. Volitelné parametry umožňují zavolat funkci bez daného argumentu, ale uvnitř musíte kontrolovat, zda je hodnota definovaná. Výchozí hodnoty vám ušetří ruční přiřazování undefined. Dávejte si také pozor na typy, které se mění v průběhu času – použijte generické typy, pokud chcete, aby funkce fungovala s libovolným typem při zachování typové bezpe…")
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)

Při práci s funkcemi si osvojte volitelné parametry (znak ?) a výchozí hodnoty. Volitelné parametry umožňují zavolat funkci bez daného argumentu, ale uvnitř musíte kontrolovat, zda je hodnota definovaná. Výchozí hodnoty vám ušetří ruční přiřazování undefined. Dávejte si také pozor na typy, které se mění v průběhu času – použijte generické typy, pokud chcete, aby funkce fungovala s libovolným typem při zachování typové bezpečnosti. Například funkce pro zpracování pole by měla být generická, abyste nepřišli o informaci o typu prvků.

Při práci s NoSQL se vyvarujte dvěma častým chybám. První je použití NoSQL jen proto, že je „moderní", bez jasného důvodu. Druhým problémem je nedostatečné navržení datového modelu. V NoSQL se často doporučuje ukládat data tak, jak je budete číst (denormalizace). To znamená, že pokud potřebujete zobrazit objednávku s položkami, uložíte je společně v jednom dokumentu, místo abyste je rozdělovali do více tabulek. To vede k výkonnostnímu zisku, ale musíte pečlivě zvážit, jak se data mění, abyste se vyhnuli nekonzistencím.

Kdy NoSQL nepoužívat a jaké chyby se vyvarovat Naopak, pokud potřebujete provádět složité transakce, kde je nutné zajistit, aby se buď provedly všechny operace, nebo žádná, zůstaňte u relační databáze. Typickým příkladem je bankovní převod – odeslání peněz a připsání na účet musí proběhnout atomicky. Většina NoSQL systémů podporuje transakce jen omezeně, nebo jen na úrovni jednoho záznamu. Dalším případem, kdy se NoSQL nehodí, jsou dotazy nad více tabulkami, které vyžadují časté spojování (JOIN). I když některé NoSQL databáze tento problém řeší, výkonnostně a vývojově je to složitější než v SQL.

Na závěr si osvojte pravidlo: Grid pro makro, Flexbox pro mikro. Když řešíte celou stránku, sáhněte po Gridu. Když řešíte zarovnání pár prvků v řadě, použijte Flexbox. Kombinací obou technik dosáhnete responzivního designu, který se snadno čte a přizpůsobuje. Testujte v prohlížeči na různých šířkách, používejte DevTools pro ladění a hlavně se nebojte experimentovat – obě metody mají bohatou dokumentaci a příkladů najdete dost.

Zásadní rozdíl najdete také v práci s transakcemi a zámky. PostgreSQL používá MVCC, což znamená, že čtení neblokuje zápis a naopak. To je výhoda, ale vyžaduje to pravidelné spouštění VACUUM, aby se databáze nezanášela mrtvými řádky. Po migraci nastavte autovacuum tak, aby odpovídalo zátěži vaší aplikace. Dále zkontrolujte, zda vaše aplikace nepoužívá MySQL specifické příkazy jako INSERT IGNORE nebo ON DUPLICATE KEY UPDATE – v PostgreSQL je musíte nahradit pomocí INSERT ... ON CONFLICT DO NOTHING nebo DO UPDATE.

Praktický postup: od exportu po ověření konzistence Pro samotný přenos dat použijte nástroj pgloader, který umí číst přímo z MySQL a zapisovat do PostgreSQL. Před spuštěním si připravte cílovou databázi s prázdným schématem – pgloader vytvoří tabulky automaticky, ale výsledné datové typy často nejsou optimální. Po importu proto zkontrolujte definice sloupců a upravte je ručně, zejména pokud jde o číselné typy (MySQL INT vs PostgreSQL INTEGER) nebo dekadická čísla. Pro velké tabulky zvažte rozdělení exportu na menší dávky, abyste předešli přetečení paměti serveru.

Časté chyby, které vás připraví o smysl testů První typická chyba je testování implementace místo chování. Když testujete, že funkce volá jinou funkci s určitými argumenty, svazujete si ruce pro budoucí refaktoring. Test by měl selhat pouze tehdy, když se změní výsledek, ne když se změní vnitřní struktura kódu. Druhá častá chyba je psaní testů, které projdou i bez testované funkce. Typicky jde o testy, které kontrolují jen to, že funkce nevyhodí výjimku, ale nekontrolují návratovou hodnotu. Takový test je k ničemu.

Dalším častým problémem je odhadování „ve vzduchu" bez znalosti existujícího kódu. Pokud neznáte architekturu, použité knihovny nebo kvalitu testů, je váš odhad jen tipování. Před odhadem si projděte relevantní části kódu, podívejte se na podobné úkoly z minulosti a zjistěte, jak dlouho reálně trvaly. Historická data z vašeho týmu jsou nejcennějším zdrojem – pokud je nemáte, začněte si je zaznamenávat.

Před nasazením NoSQL si udělejte malý test. Navrhněte, jak byste řešili tři nejdůležitější dotazy vaší aplikace v relační databázi a v NoSQL. Porovnejte, který model je jednodušší na implementaci a údržbu. Pokud zjistíte, že v NoSQL musíte data ukládat redundantně a složitě synchronizovat, je pravděpodobně lepší zůstat u klasického SQL. Na druhou stranu, pokud vaše aplikace potřebuje škálovat na desítky tisíc zápisů za sekundu a data nevyžadují složité vztahy, NoSQL může být správná volba.