![]() |
AW: Globale Variablen/Abhängigkeiten = Böse... Und nu?
Zitat:
|
AW: Globale Variablen/Abhängigkeiten = Böse... Und nu?
Mir war der Begriff "Globale Abhängigkeit" neu, und ich finde auch bei Google nichts darunter. Hat vielleicht jemand ein paar gute Links dazu oder einen alternativen Begriff unter dem etwas zu finden ist?
Mir viel nämlich gerade auf, dass eine Haskell-Bibliothek, die ich aus ganz anderen Gedanken schrieb, eine perfekte Struktur hat, so etwas auch allgemeiner zu bedienen, daher will ich da mal etwas nachforschen. |
AW: Globale Variablen/Abhängigkeiten = Böse... Und nu?
Im Prinzip heißt es, daß der Code von "globalen" Dingen abhängig ist.
Du greifst also von deinem Code auf eine globale Variable zu, bzw. holst dir aus irgendeiner fremden Instanz etwas raus. Beispiel: die globalen Form-Variablen (von Form2 auf Form1 zugreifen) Damit bist du davon abhängig. Ohne geht nicht und mit was Anderem auch nicht. Wenn du dir das jetzt aber geben lässt, anstatt es von irgendwo zu holen, dann bist du nicht mehr abhängig und man kann dich mit sonstwas verwenden. Man lässt sich Eingabedinge geben und Rückgaben gibt man entweder an ein interface raus, wo sich aber jeder registrieren kann, bzw. es wird über eine Callback-Methode rausgegeben. * nichts selber holen, außer von frei registrierbaren Quellen, oder sich alles geben lassen * nicht selber irgendwo an was Festes übergeben, außer an frei registrierbare Ziele, oder die Ergebnisse abholen lassen * wenn man davon problemlos mehrere Instanzen erstellen kann, ohne daß sich beide Instanzen irgendwie in die Quere kommen, dann gibt es vermutlich keine Abhängigkeiten |
AW: Globale Variablen/Abhängigkeiten = Böse... Und nu?
"Globale Abhängigkeit" = Abhängigkeit auf einen global State (meist eine globale Variable oder ein Singleton).
Siehe dazu z.B. ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz