Když místo termínů řeknete rozpětí, zákazník přestane hlídat každý den
Prvním krokem je instalace. V prostředí virtualenv spustíte příkaz pip install pytest. Pokud používáte Poetry nebo uv, přidáte pytest jako vývojovou závislost. Po instalaci si vytvořte soubor test_sample.py s funkcí test_soucet, která ověřuje, že součet dvou čísel funguje správně. Funkce by měla obsahovat assert – pokud podmínka neplatí, test selže. To je celé kouzlo: pytest spouští všechny funkce začínající na test_ v souborech, které začínají na test_ nebo končí na _test.py.
Práce s chybami je další oblast, kde pytest vyniká. Chcete-li ověřit, že funkce vyhodí výjimku, použijte kontextový manažer with pytest.raises(ValueError). Tím testujete nejen to, že funkce selže, ale že selže správným způsobem. Často se také setkáte s parametrizací. Pomocí @pytest.mark.parametrize předáte do testu více sad vstupů a očekávaných výstupů. Tím se vyhnete kopírování podobných testů a zároveň pokryjete více okrajových případů. Například testujete dělení nulou, prázdný řetězec nebo záporné číslo.
Začněte tím, že si sami pro sebe rozdělíte práci na menší části a ke každé přiřadíte rozpětí, ne jedno číslo. Například „návrh architektury mi zabere dva až tři dny", „implementace API pět až sedm dní". Tento postup vám dá reálný obraz o tom, kolik času vlastně potřebujete. Zákazníkovi pak řeknete: „Celkem to vidím na deset až čtrnáct dní, If you cherished this article and you would like to get more info relating to Proměna bytu nicely visit the web-page. ale přesný termín upřesním po první fázi." Tím mu dáváte jasnou představu, ale zároveň si necháváte prostor pro nepředvídatelné okolnosti. Zároveň tím nastavujete očekávání, že termín se může upřesnit – a to je v pořádku.
Pro úplného nováčka je rozumné zvolit jazyk s mírnou křivkou učení, kterým rychle uvidíte výsledek. Python je dobrý příklad: čte se téměř jako angličtina, má obrovskou komunitu a snadno v něm napíšete první skripty. Ale pozor, jednoduchost není totéž co slabost. Naučíte se v něm základy funkcí, cyklů i práce se soubory, což je základ pro cokoli dalšího. Pokud byste chtěli dělat webové frontendy, sáhněte po JavaScriptu, ale připravte se na to, že jeho asynchronní chování vás ze začátku bude mást.
REST API je ideální, když máte stabilní, dobře definované zdroje – třeba uživatele, objednávky nebo články. Využijete ho naplno, pokud klient potřebuje vždy kompletní reprezentaci dané entity. Typický příklad: veřejné API pro třetí strany. Tady oceníte jednoduchou adresaci, snadné testování pomocí běžných nástrojů a přirozenou podporu HTTP metod. Naopak pokud vaše aplikace vyžaduje složená data z více entit najednou, začnete řetězit volání a každé z nich s sebou nese režii. Roste latence a spotřeba dat, což se projeví zejména u mobilních klientů s omezeným připojením.
Další praktická rada: nepodceňujte migraci dat. Přesun z relační databáze do NoSQL není jen technická operace, ale i změna datového modelu. Musíte navrhnout dokumenty tak, aby odpovídaly přístupovým vzorům vaší aplikace. Typická chyba je snažit se osvětlení v obýváku NoSQL replikovat relační schéma s cizími klíči. Místo toho analyzujte, jak se data čtou a zapisují, a podle toho strukturu přizpůsobte. Například pokud často čtete uživatele spolu s jeho objednávkami, uložte je do jednoho dokumentu, i když to znamená duplikaci.
Co se stane, když mluvíte o rozpětí a průběžném upřesňování Zákazník přestane vnímat váš odhad jako závazek a začne ho vnímat jako plán. To je zásadní rozdíl. Když řeknete „deset až čtrnáct dní", máte prostor pro případné zpoždění, aniž byste museli vysvětlovat, proč to nestíháte. A pokud to stihnete za deset dní, jste hrdina. Pokud za čtrnáct, jste v limitu. Pokud ale řeknete „deset dní" a dodáte za dvanáct, dostanete se do role toho, kdo slibuje a neplní. Druhým krokem je průběžné informování. Nečekejte na konec, ale po třech nebo čtyřech dnech napište krátkou zprávu: „Jdu podle plánu, zatím to vypadá na jedenáct dní, do konce týdne potvrdím." Tím dokazujete, že situaci sledujete a že vám na něm záleží.
Když začnete zabezpečovat API pomocí JWT tokenů, první věc, kterou objevíte, je zdánlivá jednoduchost. Token se vygeneruje, pošle klientovi, ten ho přikládá do hlavičky a server ověří podpis. Jenže právě v té zdánlivé jednoduchosti číhá nejvíc chyb, které celou ochranu rozbijí. Nejde o to, http://miklagaard.no že by JWT bylo špatné řešení, ale o to, jak ho nasadíte. Bezpečnost totiž nekončí u podepsání tokenu, začíná u toho, jak dlouho token žije, co obsahuje a kde ho server ukládá.
Pokud se rozhodnete pro NoSQL, začněte s malým pilotním projektem. Vyberte si jeden konkrétní případ, kde vidíte jasný přínos, a otestujte, jak se databáze chová při zatížení. Například pokud potřebujete ukládat miliony záznamů z IoT senzorů a dotazovat se nábytek na míru časové intervaly, sloupcová databáze je vhodná. Ale nezapomeňte, že NoSQL obvykle nemá tak silnou podporu pro joiny a agregace jako SQL. Budete muset denormalizovat data, což vede k duplicitám a nutnosti spravovat konzistenci v aplikaci.