PHP Manual
/
Tests

Merkmalskennzeichen / Merkmalsein- und -ausschalter

11. 12. 2022

Obsah článku

Wenn Sie eine komplexere Anwendung entwickeln, werden Sie die Möglichkeit zu schätzen wissen, mehr Funktionen im Voraus zu entwickeln, sie mit der nächsten Version Ihrer Software zu verteilen und die Funktion später zu aktivieren.

Das ist genau das, wofür Merkmalskennzeichnungen geschaffen wurden. Dieser Artikel zeigt Ihnen, wie Sie sie verwenden können.

Grundlegende Umsetzung

Feature-Flags sind im Grunde ein sehr einfaches Konzept, bei dem eine einzelne Funktion/Methode aufgerufen wird, die entscheidet, ob ein neues Feature aktiv ist.

Zum Beispiel:

echo '<h1>Wetter-Apps</h1>';
echo 'Heute ist es so:' . getWeather();
if (feature('Karte')) {
echo 'Karte:' . getMap();
}

Um die Verfügbarkeit einer bestimmten Nachricht zu prüfen, wird die Funktion feature() aufgerufen, die anhand des Aufrufnamens entscheidet, ob sie die betreffende Funktion zulässt oder ignoriert.

Umsetzung der Entscheidungslogik

Die Entscheidungslogik ist oft komplex. So können Sie beispielsweise eine bestimmte Funktion nur ab einem bestimmten Datum oder für Benutzer einer bestimmten Gruppe ausführen. Ich teste zum Beispiel oft die Einführung einer neuen Funktion bei, sagen wir, 5 % der Benutzer auf diese Weise, damit sie nicht alle auf einmal betrifft.

Bei der Entwicklung von Unternehmenssoftware beispielsweise führen wir auf diese Weise Werbekampagnen und Rabatte durch, die ab einem bestimmten Datum gültig sind.

Wenn ein bestimmtes neues Feature nicht funktioniert, kann es einfach mit einem Feature-Flag für die Benutzer deaktiviert und für eine Gruppe von Entwicklern aktiviert werden, die es testen und z. B. eine Korrektur einbringen werden.

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:

Související články

1.
2.
Status:
All systems normal.
2024