Při vývoji složitější aplikace oceníte možnost vyvinout více funkcí dopředu, ty distribuovat společně s další verzí vašeho software, a funkci povolit až později.
Přesně pro tento účel vznikly tzv. feature flagy. Tento článek ukáže možnosti jejich použití.
Feature flagy jsou v podstatě velmi jednoduchý koncept volání jedné funkce/metody, která rozhodne, jestli je nová feature aktivní.
Například:
echo '<h1>Aplikace o počasí</h1>';echo 'Dnes je: ' . getWeather();if (feature('map')) {echo 'Mapa: ' . getMap();}
Pro ověření dostupnosti konkrétní novinky se provolává funkce feature()
, která podle volacího názvu rozhodne, jestli může konkrétní funkci povolit nebo ignorovat.
Rozhodovací logika bývá často složitější. Například můžete konkrétní funkci spustit až od konkrétního data, nebo pro uživatele z určité skupiny. Často takto například testuji nasazení nové funkce třeba na 5 % uživatelů, aby to neovlivnilo všechny najednou.
Při vývoji firemního sotfware takto například spouštíme reklamní kampaně a slevy, které platí od určitého dne.
Pokud se konkrétní novinka rozbije, je možné ji jednoduše feature flagem pro uživatele vypnout, a povolit například jen pro skupinu vývojářů, kteři ji otestují a přinesou opravu.
Jan Barášek Více o autorovi
Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.
Rád vám pomůžu:
Nabízím trénink vývojářů, konzultace, školení a analýzu návrhových vzorů. Osobně v Praze nebo online.
Napište mi, pokud si nevíte rady.
Lektor: Jan Barášek
Články píše Jan Barášek © 2009-2024 | Kontakt | Mapa webu
Status | Aktualizováno: ... | cs