Než napíšete první řádek kódu, rozhodněte se, co vlastně chcete automatizovat. Python nejlépe vynikne u opakujících se činností nad soubory, e-maily nebo webovými formuláři. Pro jednorázové úkoly se ale někdy vyplatí sáhnout po nástroji, který už má hotové funkce přímo v sobě. U Pythonu totiž platí, že instalace knihoven a správa prostředí zabere víc času než samotné řešení problému, pokud jde jen o pár řádků.<br>
<br>
<br>
<br>
Jak na typy dat a automatické číslování Největší rozdíl je v auto-increment. MySQL používá AUTO_INCREMENT, PostgreSQL sekvence. Při migraci proto nahraďte všechny sloupce typu int s AUTO_INCREMENT za typ serial nebo bigserial. Dále pozor na booleovské hodnoty: PostgreSQL používá TRUE/FALSE, zatímco MySQL 1/0. Datum a čas se také liší – timestamp v PostgreSQL má přesnost na mikrosekundy, ale bez časového pásma se snadno dopustíte chyby. Pro peněžní hodnoty nepoužívejte float, ale numeric s definovanou přesností.<br>
<br>
<br>
<br>
Nakonec si ujasněte, co je hlavní větev. Měla by být vždy stabilní a nasaditelná. Nové funkce proto neslučuj hned, ale až projdou testy a review. Pokud máte více prostředí, zvažte, zda potřebujete samostatnou větev pro vývoj a produkci. Pro většinu týmů stačí jedna hlavní větev a větve pro funkce – to je nejjednodušší model, který funguje. Složitější flow má smysl jen pokud skutečně potřebujete paralelně udržovat více verzí (např. opravy pro starší verzi). Čím méně větví a pravidel, tím snazší je spolupráce.<br>
<br>
<br>
<br>
Jak se vyhnout konfliktům a přepisování historie Největším zdrojem problémů bývá práce na stejných souborech ve více větvích. Řešením není se jim vyhnout – to nejde – ale minimalizovat jejich dopad. Když máš rozpracovanou funkci a hlavní větev se mezitím posune, nečekej se sloučením, ale průběžně si do své větve taháš změny z hlavní. To dělá konflikty menší a řeší se postupně. Jakmile se konflikt objeví, nikdy ho neřeš přepsáním celého souboru – použij nástroj pro řešení konfliktů a podívej se, co dělal kolega. Často stačí soubor otevřít a sjednotit logiku.<br>
<br>
<br>
<br>
V praxi se osvědčuje pravidlo „jedna větev = jedna logická změna". Před začátkem práce si zkontroluj, že vycházíš z aktuálního stavu hlavní větve, a větvi dej výstižný název, který popisuje úkol (například „oprava-prihlasovani" místo „feature1"). Po dokončení změn ji co nejdříve sluč zpět pomocí pull requestu nebo merge requestu. Právě pull request je místem, kde se odehrává code review – nikdo by neměl slučovat vlastní práci bez kontroly kolegy, a to ani v malém týmu. Tím se zachytí nejen chyby v logice, ale i špatně pojmenované proměnné nebo chybějící testy.<br>
<br>
<br>
<br>
Typickou chybou je také ignorování konvencí pro commity. Každý commit by měl být malý a srozumitelný – jeden commit řeší jednu věc a jeho zpráva popisuje, co a proč. Vyhnete se tak situaci, kdy je v jednom commitu pět změn a nikdo neví, co se vlastně stalo. Dobré pravidlo: pokud bys mohl commit rozpůlit na dva nezávislé, měl bys.<br>
<br>
<br>
<br>
Pro začátek si rozmyslete, jaké funkce budete reálně používat. Pokud jen testujete malé úryvky kódu, vystačíte si s jednoduchým editorem s integrovaným terminálem. Naopak pro práci s virtuálními prostředími, laděním (debugging) nebo verzováním se vyplatí plnohodnotné IDE, které tyto nástroje umí propojit. Typickou chybou je instalovat nejtěžší a nejfunkčnější prostředí hned na začátku – pak trávíte hodiny nastavováním pluginů a konfigurací, místo abyste psali kód. Ideální postup: zjistěte, jaké knihovny a frameworky budete používat, a podle toho vyberte nástroj, který je podporuje nativně.<br>
<br>
<br>
<br>
Dalším častým omylem je podcenění správy projektů. Když začnete psát aplikaci, která má více modulů a závislostí, potřebujete, aby IDE automaticky rozpoznávalo strukturu složek a nabízelo automatické doplňování napříč soubory. Pokud je doplňování pomalé nebo nefunkční, přijdete o jednu z hlavních výhod IDE – rychlejší psaní bez překlepů. Zde platí: vyzkoušejte si na vzorovém projektu, jak prostředí reaguje na importy a na přejmenování funkcí. Pokud se při každé změně musíte přepínat do terminálu a ručně spouštět testy, možná jste zvolili příliš jednoduchý editor.<br>
<br>
<br>
<br>
Typická chyba začátečníků je, že zapomenou ošetřit situaci, kdy soubor neexistuje nebo nemají oprávnění zápisu. Python vám vyhodí chybu a skript skončí. Naučte se proto používat bloky pro zachycení výjimek. Vypište si do konzole srozumitelnou hlášku, co se nepovedlo, a pokračujte dál. Další častý problém je tvrdě zakódovaná cesta k souboru, která funguje jen na vašem počítači. Místo toho si na začátku skriptu definujte proměnnou pro vstupní složku a tu pak používejte na více místech. Změna pak znamená úpravu jedné řádky, ne lovení v pěti stech řádcích.