Ich bin oft mit dem Problem konfrontiert, einige (möglicherweise komplexe) Konfigurationseinstellungen, die aus Dateien im Dateisystem geladen wurden, im Speicher abzulegen. Ich frage mich, ob es eine bessere Möglichkeit gibt, ein Muster für dieses Problem zu entwerfen, als das, was ich verwendet habe.Design Pattern für einmalig geladene Konfigurationseigenschaften?
Im Wesentlichen umfasst meine aktuelle Lösung drei Schritte.
Erstellen Sie ein Singleton. Da Daten persistent sind und garantiert, dass sie sich während der Laufzeit der Anwendung nicht ändern, sollte immer nur eine Objektinstanz benötigt werden.
Wenn die erste Anfrage für das Objekt gemacht wird, erstellen Sie das Objekt und lesen Sie aus einer Datei ein.
Daten mit Gettern freilegen.
Dies hat den Effekt, dass viele meiner Code sieht wie folgt aus: MyConfiguration.getInstance().getWeightOfBomb()
, die mir ziemlich seltsam aussieht.
Gibt es einen besseren Weg, dies in einer semantischen Weise zu behandeln?
Viele Manchmal muss ich einige Konfigurationseigenschaften in kleine Konsolen-Apps umwandeln (die ich in letzter Zeit massenweise geschrieben habe) . In größeren Anwendungen (für die ich dieses Muster übernommen habe) funktioniert diese Methode jedoch gut. –