Tach!
Was ich aber bis heute noch nicht ganz klar geregelt habe, sind die Konfigurationsvariablen und -konstanten. Wie baut Ihr eure Konfigurationsdateien?
Variablen und Konstanten? Warum nicht eine Konfigurations-Klasse, die aus unterschiedlichen Quellen die Konfigurationsdaten ziehen kann? Wenn mehrere Verwender daran interessiert sind, kann man eine Registry nehmen (quasi ein Singleton).
Wenn man eine mehr oder weniger lose Sammlung von Tools (Klassen) zusammenstellt, die zusammenarbeiten sollen, dann kann es passieren, dass jemand eine Klasse (oder ein Modul) umbenennen muss, da es mit einem bei ihm bereits vorhandenen kollidiert.
Woher erfahren aber dann die davon abhängigen / darauf aufbauenden Module, dass der name sich geändert hat?
Search & Replace im Editor.
Wie kann man dafür Sorge tragen, dass auch die Systemvariablen / Konstanten, die zum Modul gehören, nun einen andern Präfix oder eine anderen Array-Sub-Bezeichner bekommen müssen?
Search & Replace im Editor. Oder auf globale Dinge verzichten.
Ich habe mir überlegt, dass man für solche Fälle der Klasse / dem Modul selber eine Methode / Funktion "check_config()" / "modulname_check_config()" einbauen könnte, die eine Musterkonfiguration erzeugt bzw. eine vorhandene ergänzt und checkt.
Ist das jetzt auch überskaliert?
Kann ich nicht beantworten, weil ich nicht erkenne, was du da genau vorhast.
Ich möchte dadurch erreichen, dass bei der ersten Verwendung eines Moduls / einer Klasse automatisch die notwendige Konfiguration erzeugt wird. [...] Der Verwender der Module oder Klassen könnte sich somit von der Klasse die Arbeit abnehmen lassen.
Welche Arbeit konkret?
Oder gibt es sowas schon? Dann wäre es doch nur Rad² ;-))
NIH*)-Frameworks kommen nicht in die Tüte?
*) NIH: not invented here.
dedlfix.