Další praktický bod: jak chcete, aby váš projekt vypadal na GitHubu nebo GitLabu? Důležitý je nejen samotný text licence, ale i hlavičky v souborech. Mít licenci pouze v kořenovém adresáři nestačí, pokud přebíráte kód z více zdrojů. U každého souboru by mělo být jasné, kdo je autorem a pod jakou licencí je zveřejněn. To oceníte hlavně ve chvíli, kdy někdo přijde s připomínkou, že jste porušili cizí práva. Bez hlaviček je dohledávání původu velmi pracné a může vést k právním problémům.
Jak správně psát spojení tabulek Spojení tabulek jsou další oblastí, kde se dělají zbytečné chyby. Nejprve si ověřte, že spojujete přes indexované sloupce. Pokud spojujete přes sloupec, který nemá index, databáze musí procházet celou tabulku – a to je pomalé. Vždy také zkontrolujte, zda spojení nevede k násobení řádků. Častou chybou je spojení přes více sloupců, kde není jasné, který je primární klíč. Například spojení přes sloupec, který obsahuje duplicitní hodnoty, způsobí, že se každý řádek z první tabulky spojí s více řádky z druhé, a výsledek je mnohem větší, než jste čekali. Pak se to celé ještě třídí a filtruje, což výkon ještě zhorší.
Copyleft vs. permisivní: co to znamená pro vaše uživatele Pokud zvolíte copyleft, připravte se na to, že někteří potenciální přispěvatelé z komerční sféry váš projekt obejdou. Firmy často preferují permisivní licence, protože jim umožňují začlenit kód do placeného produktu bez povinnosti zveřejnit zdrojový kód. Naopak copyleft chrání komunitu – kdokoli, kdo váš kód použije, musí pod stejnou licencí zpřístupnit i své úpravy. Zvažte, co je pro vás důležitější: rychlé šíření a široká adopce, nebo ochrana svobodného charakteru projektu.
Na závěr si dejte pozor na jednu věc: neposílejte životopis, ve kterém napíšete „nemám praxi, ale jsem pečlivý”. Taková fráze nefunguje. Místo toho uveďte konkrétní projekt, na kterém jste testovali, kolik chyb jste nahlásili a jaké typy testů jste prováděli. Můžete si založit jednoduché portfolio, kde budou ukázky vašich reportů a testovacích plánů. Když tohle ukážete, nikdo se nebude ptát, kde jste pracoval. Klíčem je ukázat, že už testovat umíte — a že vám chybí jen formální razítko v podobě zaměstnání.
Nakonec si dejte pozor na implicitní konverze typů. Když porovnáváte textový sloupec s číslem, databáze musí každou hodnotu převést, což zabrání použití indexu. Stejně tak porovnávání řetězců s různou znakovou sadou může být pomalé. Pravidelně sledujte výkon dotazů, které běží dlouho, a analyzujte jejich plány. Optimalizace není jednorázová činnost – s rostoucím objemem dat se chování mění a to, co fungovalo před měsícem, nemusí fungovat dnes. Důležité je také testovat na datech podobné velikosti jako v produkci, protože testování na malém vzorku často skryje problémy s výkonem.
Častou chybou je také snažit se odhadnout čas bez dostatečných informací. Než cokoli slíbíte, zeptejte se na detaily zadání. Čím víc toho víte o rozsahu práce, tím přesnější odhad můžete dát. Pokud informace chybí, řekněte to na rovinu: „Teprve po analýze zadání vám dám konkrétnější termín.” Zákazník ocení, že nejednáte naslepo. Když se ale zadání během práce změní, nebojte se odhad aktualizovat. Mlčet až do termínu a pak omlouvat zpoždění je to nejhorší, co můžete udělat. Včasná komunikace o novém odhadu je známkou profesionality.
Když v týmu přepisujete historii společných commitů, dříve nebo později narazíte na konflikt, který nejde vyřešit bez ručního zásahu. Nejčastější chybou bývá, že každý vývojář drží vlastní představu o tom, kdy a jak začlenit práci do hlavní větve. Přitom stačí dodržet pár pravidel, která práci zpřehlední a ušetří desítky minut denně. Tento text se zaměřuje na rozdíl mezi sdíleným commitnutím do jedné větve a prací na samostatných větvích – ukáže, kdy zvolit který postup a na co si dát pozor.
Základem je podívat se na plán provádění dotazu, tedy na to, jak databáze přistupuje k tabulkám. Většina databázových systémů nabízí příkaz pro zobrazení plánu, ať už jde o nástroj pro vizualizaci, nebo textový výpis. Typickou chybou je použití funkce na sloupci v podmínce WHERE. Pokud napíšete podmínku jako DATE(created_at) = ‘2024-01-01’, databáze nemůže použít běžný index na sloupci created_at, protože musí funkci aplikovat na každý řádek. Řešení spočívá v úpravě podmínky na rozsah: created_at >= ‘2024-01-01’ AND created_at <'2024-01-02'. Tím se databáze dostane k indexu a dotaz je výrazně rychlejší.
Důležité je také omezit počet sloupců, které skutečně potřebujete. Místo SELECT * vyjmenujte jen potřebné sloupce. Tím se zmenší objem přenášených dat a databáze může využít pokryvný index, kdy jsou všechny potřebné hodnoty přímo v indexu a nemusí sahat do tabulky. Když potřebujete jen počty, použijte COUNT s podmínkou, ale vyhněte se COUNT(*) na velkých tabulkách bez filtru. Pokud potřebujete stránkování, vyhněte se OFFSET s velkým číslem – místo toho si zapamatujte poslední hodnotu klíče a použijte ji v podmínce WHERE. Tím se databáze vyhne procházení všech předchozích řádků.
If you cherished this report and you would like to receive a lot more data about více na webu kindly pay a visit to the site.
