1. Foren
  2. Kommentare
  3. Software-Entwicklung-Forum
  4. Alle Kommentare zum Artikel
  5. › Softwareentwicklung:…

feature flags sind ein antipattern

Neue Foren im Freiraum! Raumfahrt und freie Software haben jetzt einen Platz, die Games tummeln sich jetzt alle in einem Forum.
  1. Thema

Neues Thema


  1. feature flags sind ein antipattern

    Autor: ubuntu_user 03.04.21 - 23:15

    das nutzt man nur, wenn man die kontrolle über seine software verloren hat.
    man kann das natürlich zur Laufzeit auswerten, wobei das dann performance kostet.
    wenn man das als compilerflag nutzt ist es ne globale variable und damit schonmal ein nogo. meistens nutzt man das dann nur weil man für features dann an mehreren stellen was machen muss. damit verstösst das dann aber auch gegen ne gute architektur.
    Mir fällt auch kein szenario ein wo das sinnvoll ist.
    die beispiele in dem artikel sind nicht sinnvoll, da hat man andere probleme mit der architektur, wenn da 100 entwickler an der gleichen stelle code was ändern müssen.

    wenn man was für Nutzer deaktivieren will, dann kann man das in der UI machen. das backend braucht davon nichts wissen. und UI was zu deaktivieren würde ich nicht als featureflag sehen, zumal die UI dann ggf eh angepasst werden müsste

  2. Re: feature flags sind ein antipattern

    Autor: wupmedude 04.04.21 - 00:24

    ubuntu_user schrieb:
    --------------------------------------------------------------------------------
    > das nutzt man nur, wenn man die kontrolle über seine software verloren
    > hat.
    > man kann das natürlich zur Laufzeit auswerten, wobei das dann performance
    > kostet.
    > wenn man das als compilerflag nutzt ist es ne globale variable und damit
    > schonmal ein nogo.

    Ab da braucht man eigentlich dann auch nicht mehr weiter lesen.
    Abgesehen davon dass das keine globale Variable sein muss um zu funktioneren....

    > wenn man was für Nutzer deaktivieren will, dann kann man das in der UI
    > machen. das backend braucht davon nichts wissen. und UI was zu deaktivieren
    > würde ich nicht als featureflag sehen, zumal die UI dann ggf eh angepasst
    > werden müsste

    Mhm, passiert auch garnicht dass genau das am Ende auf ganz easy umgangen wird.

  3. Re: feature flags sind ein antipattern

    Autor: TheUnichi 04.04.21 - 12:08

    ubuntu_user schrieb:
    --------------------------------------------------------------------------------
    > wenn man was für Nutzer deaktivieren will, dann kann man das in der UI machen. das backend braucht davon nichts wissen.

    Entwickelst du überhaupt Software oder reihst du nur Worte aneinander?

    Verstehe nicht, warum man kommentiert, wenn man gar nicht weiß, wovon man redet.

  4. Re: feature flags sind ein antipattern

    Autor: me2 04.04.21 - 13:16

    wupmedude schrieb:
    --------------------------------------------------------------------------------
    > ubuntu_user schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > das nutzt man nur, wenn man die kontrolle über seine software verloren
    > > hat.
    > > man kann das natürlich zur Laufzeit auswerten, wobei das dann
    > performance
    > > kostet.
    > > wenn man das als compilerflag nutzt ist es ne globale variable und damit
    > > schonmal ein nogo.
    >
    > Ab da braucht man eigentlich dann auch nicht mehr weiter lesen.
    > Abgesehen davon dass das keine globale Variable sein muss um zu
    > funktioneren....

    War auch mein erster Gedanke. Compiler flags sind keine globalen Variablen. Und selbst wenn du ein #define oder so hast ist das lokal für deine jeweilige Compile Unit. Wenn du es in einen Header packt, ist es eben gültig für alle Compile Units die diesen Header einbinden.

    Abgesehen davon gibt es viele weitere Möglichkeiten ein "Flag" schon beim Compilieren wirksam werden zu lassen. Du brauchst nur irgendein Konstrukt oder Objekt oder Ausdruck, den der Compiler als konstant erkennen kann und dazu eignen sich viele Dinge (z.B. die Definitionen von Typen, Konstanten, konstanten (Inline) Funktionen, ...). Wenn der Compiler das Ergebnis kennt, dann entfernt er den toten Code schon beim Compilieren.

    Und wenn man sich weder eine Struktur, noch ein Namensschema ausdenken kann, wie man Flags für Einzelmodule, Modulgruppen und für die Gesamtsoftware sauber verwaltet, dann hat man wohl wirklich die Kontrolle über seine Software verloren, und hofft nur noch drauf, dass statt dessen ein starrer, unflexibler und unpassender Vorgabenrahmen mit willkürlichen Regeln die Kontrolle übernommen hat, den man selbst dann noch befolgt wenn er weder Sinn noch Nutzen hat.

    Oder wollte ubuntu_user eigentlich was anderes schreiben: "wenn man das anstelle eines compilerflag nutzt ist es ne globale variable und damit schonmal ein nogo." ? Würde mehr Sinn machen aber selbst dann ist das noch falsch. Denn es gibt auch lokale Variablen oder Funktionen, mit der man Flags in einem Modul verankern kann.

  5. Re: feature flags sind ein antipattern

    Autor: tomate.salat.inc 05.04.21 - 13:40

    me2 schrieb:
    --------------------------------------------------------------------------------
    > War auch mein erster Gedanke. Compiler flags sind keine globalen Variablen.

    Nun ja - kommt immer drauf an mit was du arbeitest. Bin jetzt experte was NPM-Projekte angeht - aber da ist es meines wissens nach durchaus eine globale env variable.

  1. Thema

Neues Thema


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. (Junior) Software Entwickler:in (m/w/d) Druck- und e-Marketing
    DKMS gemeinnützige GmbH, Köln, Tübingen
  2. SAP Job - SAP PP, MM, WM Inhouse Consultant Job
    über duerenhoff GmbH, Offenburg
  3. Business Analyst / Buchhalter mit IT-Affinität (m/w/d)
    Allianz Lebensversicherungs-AG, München, Stuttgart
  4. Teamleitung IT-Sicherheitsberatung (w/m/d)
    Dataport, Altenholz/Kiel, Halle (Saale), Hamburg, Magdeburg, Rostock

Detailsuche


Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Spiele-Angebote
  1. (PS5, PS4, PC, Xbox, Switch)
  2. 49,99€ (inkl. Bonusmission "Die vierzig Räuber")
  3. 5,75€
  4. 5€ inkl. Versand (Vergleichspreis 10,98€)


Haben wir etwas übersehen?

E-Mail an news@golem.de