Gen. partnerAlgotech

Feature flagy / zapínání a vypínání funkcí

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.

|
11. prosince 2022

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í.

Základní implementace

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.

Implementace rozhodovací logiky

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.

Načítání komentářů...

Zůstaňte v obraze

Přihlaste se k odběru našeho newsletteru a získejte nejnovější informace o kybernetické bezpečnosti přímo do vaší e-mailové schránky.

Vaše údaje jsou v bezpečí. Newsletter můžete kdykoliv odhlásit.