Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Nein, das macht man nicht, Konstanten werden einfach nur KOMPLETT_GROSS geschrieben. Abkürzungen benutzt man nicht. Was hat der Abstand zur Sonne oder zu einem Stern mit dem Problem zu tun?
Also jede Funktion wird mit dem "md"-Objekt aufgerufen, und dieses hält einerseits die Konstanten und auch die Daten. Ist das besser so? Bei Bedarf kann ich auch den gesamten Code posten (ca. 300 Zeilen...)
Die Klasse ist kompletter Quatsch. Du hast zwar nicht global benutzt, aber doch nur eine Menge globaler Variablen in einen Klassenkontext gepackt. Die Typ-Annotationen sind mal wieder überflüssig, weil der Typ der Variablen aus der Initialisierung klar ist.
MyData ist das My-Präfix unnötig, weil nichtssagend. md ist dann komplett nichtssagend. Benutze keine Abkürzungen. Und da Du keinen sprechenden Namen finden wirst, ist das schon ein Anzeichen dafür, dass das Datendesign schlecht ist.
@greetings1: Die sollten weniger verändern. `parse_*()`-Funktionen die gar nichts zum Parsen übergeben bekommen, aber viele leere Datenstrukturen sind schon mal sehr komisch. Eine Funktion die Daten parst bekommst üblicherweise einen Dateinamen übergeben und liefert eine *neue* Datenstruktur mit den geparsten Daten als Rückgabewert.
Das die Daten alle als Pärchen von Wörterbuch und Liste daherkommen ist auch komisch. Falls die Zusammengehören und da Invarianten bestehen, dann wäre *das* zum Beispiel ein Kandidat für eine Klasse. Also eine echte, von der auch Exemplare erstellt und verwendet werden, statt sie nur als globalen Namensraum zu missbrauchen. Auf Klassenebene gehören in der Regel nur Konstanten. Eben weil das sonst globale Variablen wären.
“It is easier to change the specification to fit the program than vice versa.” — Alan J. Perlis