Äußere Statische Konstanten
Globale statische Konstanten
Eine globale statische Konstante ist in einer gesamten Übersetzungseinheit oder sogar in allen miteinander verbundenen Übersetzungseinheiten eines Projekts sichtbar und dabei nicht irgendwie in einem Namensraum enthalten. Projekte mit vielen globalen Konstanten können leicht unübersichtlich werden. Quelltexte, die auf globale Konstanten zugreifen, können nicht in einer anderen Umgebung wiederverwendet werden, in der es diese globalen Konstanten nicht gibt. Wegen dieser Eigenschaften sollten globale Konstanten vermieden werden. Das Risiko von Namenszusammenstößen wird mit jeder weiteren globalen Konstanten vergrößert. (Allerdings teilen globale Konstanten ihre Sichtbarkeit und die dadurch verursachten Probleme mit globalen Unterprogrammen, die in prozeduralen Sprachen aber weithin akzeptiert sind.)
Statische Konstanten in einem globalen Namensraum
Eine statische Konstante, die in einem globalen Namensraum enthalten ist, kann unter Benutzung des Namensraums verwendet werden. Durch das sinnvolle Zusammenfassen zusammengehörigen Konstanten in Namensräumen wird es leichter, die Übersicht zu behalten. Beispielsweise könnte es einen Namensraum für mathematische Konstanten geben und einen anderen für physikalische Konstanten. Nur die Namen der Namensräume sind dann global, während die enthaltenen Konstanten lokal zu den Namensräumen sind. Daher veringert sich die Zahl globaler Namen und die Menge globaler Namen wird übersichtlicher.
Man kann globale Namensräume mit Schubladen vergleichen, in die globale Namen einsortiert werden können. Das Programm wird dadurch übersichtlicher, wie auch ein Zimmer übersichtlicher wird, wenn umherliegende Dinge in Schubladen einsortiert werden. Wichtig ist es aber, daß die Dinge nicht einfach zufällig auf Schubladen verteilt werden, sondern zusammengehörige Dinge in eine Schublade kommen.