Proč vaše rozhraní mate i zkušené uživatele

From BloomWiki
Revision as of 01:00, 2 October 2026 by 104.23.223.155 (talk) (Created page with "Práce ve větvi je bezpečná jen tehdy, když víš, kde jsi. git branch vypíše větve, git switch -c nova-vetev vytvoří a přepne. Častá chyba: upravovat soubory, pak přepnout větev a divit se, že změny „zmizely". Git je nemaže, jen je nechá v pracovním adresáři a přepnutí buď zablokuje, nebo je přenese jinam. Před přepnutím buď změny commitni, nebo je odlož pomocí git stash. Sloučení (git merge) přináší konflikty — nejsou porucha,...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Práce ve větvi je bezpečná jen tehdy, když víš, kde jsi. git branch vypíše větve, git switch -c nova-vetev vytvoří a přepne. Častá chyba: upravovat soubory, pak přepnout větev a divit se, že změny „zmizely". Git je nemaže, jen je nechá v pracovním adresáři a přepnutí buď zablokuje, nebo je přenese jinam. Před přepnutím buď změny commitni, nebo je odlož pomocí git stash. Sloučení (git merge) přináší konflikty — nejsou porucha, jsou normální stav. Otevři označené soubory, vyber správnou verzi, odstraň značky >>>>>>, pak soubor přidej a commit dokonči.

Typické chyby se opakují. Testovací data se zapisují natvrdo do kódu, takže testy padají při změně prostředí. Testy závisí na sobě navzájem a jejich pořadí rozhoduje o výsledku. Čekání se řeší pevnými prodlevami místo čekání na konkrétní stav, což vede k náhodným selháním. Automatizované testy se spouštějí jen na emulátoru a nikdy na skutečném zařízení. A často chybí testy pro obnovení stavu po přerušení – třeba když uživatel přijme hovor uprostřed nahrávání.

Nakonec platí, že sjednocení není jednorázový úkol, ale dohoda, kterou je potřeba udržovat. Vyberte variantu, která odpovídá velikosti týmu a počtu projektů, a nechte si prostor pro změnu, až se podmínky vyvinou. Jednotná konfigurace má smysl jen tehdy, když zjednodušuje každodenní práci, ne když přidává další vrstvu, kterou je třeba hlídat.

Prvním krokem je rozdělit testy podle toho, co skutečně ověřují, ne podle názvu složky. Jednotkový test volá jednu funkci nebo třídu, nepoužívá databázi, síť ani souborový systém a běží v milisekundách. Integrační test naopak ověřuje spolupráci dvou a více komponent včetně reálného úložiště nebo HTTP vrstvy. Pokud test potřebuje nastartovat aplikaci, není to jednotkový test, i když je v souboru s názvem unit.

Vývojář obvykle řeší, jestli kód funguje. Uživatel řeší, jestli chápe, co má udělat. Mezi tím vzniká propast, do které padá většina jinak technicky správných aplikací. UI a UX nejde dodatečně „přilepit" na hotový produkt. Rozhodnutí o rozložení, hierarchii a zpětné vazbě se dělají průběžně, nejlépe ještě před psaním první komponenty.

Praktický postup je postupný. Vyberte jednu oblast, například formátování kódu, a sjednoťte ji jako první. Zaveďte ji tak, aby fungovala i bez ručního zásahu, a teprve po ověření přidejte další. U každé změny si předem řekněte, jak poznáte, že funguje: sníží se počet konfliktů při slučování, zmizí opakované opravy stejné chyby, nový člen týmu spustí projekt bez dodatečného vysvětlování. Bez těchto měřítek se sjednocení zvrhne v debatu o preferencích.

Základní volba stojí mezi jedním sdíleným repozitářem a více repozitáři s centrální konfigurací. Sdílený repozitář znamená, že všechny části projektu leží pohromadě a konfigurační soubory jsou na jednom místě. Výhodou je okamžitá viditelnost změn a jednodušší zavádění nových členů týmu. Nevýhodou je horší izolace: změna v jedné části může nechtěně ovlivnit jinou a nástroje musejí zvládat větší objem dat. U více repozitářů je potřeba vyřešit, odkud se konfigurace bere a jak se synchronizuje.

Formuláře jsou místo, kde se ztrácí nejvíc konverzí. Každé pole navíc snižuje ochotu dokončit akci. Ptejte se jen na to, co skutečně potřebujete, a zbytek zjistěte později. Popisky patří nad pole, ne dovnitř jako placeholder, protože ten po napsání zmizí a uživatel zapomene, co vyplňuje. Validujte při odchodu z pole, ne při každém stisku klávesy. Chybová zpráva má být u konkrétního pole a konkrétní, ne souhrnná dole pod formulářem.

Sjednocení konfigurace projektu pro tým není otázkou jediného nástroje. Jde o rozhodnutí, kde bude konfigurace žít, kdo ji bude měnit a jak se změny dostanou ke všem. Nejčastější chybou je začít výběrem technologie dřív, než je jasné, jaké problémy má sjednocení řešit. Sepište si, co dnes dělá potíže: rozdílné verze závislostí, odlišné formátování, ruční nastavování prostředí, nebo kombinace všeho. Teprve pak má smysl porovnávat varianty.

Mezi časté chyby patří zavádění příliš mnoha pravidel najednou, ponechání starých konfigurací naživu a chybějící dohoda o tom, kdo změny schvaluje. Pokud se konfigurace mění bez kontroly, začne se dřív nebo později rozcházet s realitou. Pomáhá i to, když je konfigurace součástí projektu a ne skrytá v nastavení jednotlivých strojů. Když ji někdo potřebuje upravit, musí být jasné, kam sáhnout a koho se zeptat.

Kdy se vyplatí centrální konfigurace a kdy ne Centrální konfigurace dává smysl ve chvíli, kdy tým pravidelně řeší stejné nastavení: pravidla pro formátování, kontrolu typů, testovací skripty nebo nastavení editoru. Tyto věci patří do jednoho místa, odkud si je každý projekt vezme. Naopak věci specifické pro konkrétní službu, jako jsou cesty k datům nebo parametry nasazení, mají zůstat lokálně. Pokud se snažíte centralizovat i něco, co se v každém projektu liší, vznikne z konfigurace nečitelný soubor plný výjimek. To je typický důvod, proč se sjednocení po čase rozpadne.