Konstanten: Global in Konstanten.hpp oder lokal halten
-
Hallo!
Eine Designfrage:
Was haltet ihr besser, um Konstanten zu verwalten? Eine große Header Datei, die alle Konstanten enthält, oder je "Subsystem" eine eigene Header Datei die die Konstanten verwaltet?Bei uns in der Firma gibt es eine große globale Datei, die alle Konstanten enthalten soll.
Ich finde das ziemlich chaotisch. Da findet man dann z.B. Dinge wie "mm.dd.yyyy" als Formatstring.
Oft passt der String, die Beschreibung laut Variablennamen passt aber nicht so gut. Und schon hat man die Probleme.Bin ich der einzige der der Meinung ist, dass man Konstanten möglichst lokal halten sollte?
Zum Beispiel gibts hier ein Modul, dass sich darum kümmert, je nach Hardwareplattform die Tastatureingaben ins ASCII Format umzuwandeln.
Meiner Meinung gehört dass in eine Datei, die recht lokal zur Verwendung ist.
Weiterer Vorteil: Ich kann in dieser Datei ein paar kleine Funktionen einbauen so in der Form IsAlpha(...) o.ä.Bitte um Meinungen.
-
Ich halte sie lokal. Und ich definiere auch nur solche Konstanten, die ich brauche.
Also ich machs so: Ich definiere meine Konstanten in einem anonymen Namensraum in der cpp-Datei.
-
Eine große Header Datei, die alle Konstanten enthält, oder je "Subsystem" eine eigene Header Datei die die Konstanten verwaltet?
Letzteres.
-
Konstanten gehören dahin, wo sie auch gebraucht werden.
Edit: Eine Datei vollgestopft mit Konstanten von denen ich nur zwei brauche ist Schwachsinn.
-
sdasdasda schrieb:
Bei uns in der Firma gibt es eine große globale Datei, die alle Konstanten enthalten soll.

so lokal wie möglich, nur so global wie nötig!
-
Kenner von C++ schrieb:
sdasdasda schrieb:
Bei uns in der Firma gibt es eine große globale Datei, die alle Konstanten enthalten soll.

so lokal wie möglich, nur so global wie nötig!
hat bei uns leider ein selbsternannter C++ Profi durchgesetzt.
Gut, ich bin in meiner Annahme bekräftigt worden dass das Schwachsinn ist.
Also werde ich die "Regel" ab jetzt ignorieren und meine Konstanten dort hinstellen, wo sie hingehören.
-
sdasdasda schrieb:
Kenner von C++ schrieb:
sdasdasda schrieb:
Bei uns in der Firma gibt es eine große globale Datei, die alle Konstanten enthalten soll.

so lokal wie möglich, nur so global wie nötig!
hat bei uns leider ein selbsternannter C++ Profi durchgesetzt.
Gut, ich bin in meiner Annahme bekräftigt worden dass das Schwachsinn ist.
Also werde ich die "Regel" ab jetzt ignorieren und meine Konstanten dort hinstellen, wo sie hingehören.
Wohl nicht ohne Grund nur selbsternannt
-
sdasdasda schrieb:
Was haltet ihr besser, um Konstanten zu verwalten? Eine große Header Datei, die alle Konstanten enthält, oder je "Subsystem" eine eigene Header Datei die die Konstanten verwaltet?
Letzteres (wenn nötig).
Es gibt durchaus Fälle in denen ich einen Header mit Konstanten habe. Dies gilt aber nur, wenn es sich um Konstanten handelt, die wirklich an mehreren Stellen verwendet werden. Und selbst da mache ich nicht einen Header, sondern trenne sie so auf wie sie wahrscheinlich verwendet werden.
Das zusammenfassen in einem Header erinnert mich an viele Gottklassen, denen ich im letzten Projekt über den Weg gelaufen bin...