Hallo,
das ist ja mal wieder kompliziert.
Es kommt darauf an, was du insgesamt und jeweils speziell vorhast.
Vielleicht wäre es gut, wenn ich einfach schreibe, was ich vorhabe:
Überlegt hatte ich mir, dass ich irgendeine Datenstruktur verwenden wollte, bei denen ich Variablen für mehrere Funktionen zur Verfügung habe, die aber nicht global sind (eben um nichts zu verschmutzen). Da es keinen Sinn machte, mehrere Objekte von einer "Login-Klasse" zu instanzieren, dachte ich mir, ich könnte dieses neue Feature von PHP, nämlich Namensräume, verwenden. Das Problem ist jetzt eben, dass diese die Variablen nicht miteinbeziehen. Nach einiger Suche bin ich dann eben auf das Singleton-Muster gestoßen bin, das ja eigentlich meine Anforderungen erfüllt: Eine Klasse, von der man nur ein Objekt erzeugen kann und schön "gepackte" Variablen.
Jetzt frage ich einfach (wieder einmal): Wie würdest du so etwas realisieren?
Du solltest zuerst einmal alle Möglichkeiten der OOP ausschöpfen, bevor du Namensräume als Lösung für dein Projektstrukturierproblem ansiehst.
Welche Möglichkeiten habe ich denn mit OOP noch? Außerdem dachte ich, Namensräume wären Bestandteil davon.
Pattern - von denen es weit mehr als nur Singleton und Factory gibt - wären auch eine überlegenswerte Möglichkeit. Spontan fällt mir da das Muster Repository ein, das quasi ein besseres Array zum Ablegen von Objektinstanzen ist. Was letztlich sinnvoll ist, muss für jeden Einzelfall entschieden werden.
Leider habe ich da das Problem (so viele Probleme - Programmieren scheint wirklich nur das Lösen von Problemen zu sein), dass ich bereits "Factory" nicht verstehe, geschweige denn "Repository" (Wikipedia wird da nicht konkret genug - dadurch hätte ich hunderte (übertrieben) Ideen, das zu realisieren).
Hoffentlich werde ich jetzt langsam dieses System überhaupt einmal anfangen können. Ich habe schon mehrere Entwürfe verwerfen müssen...
Guten Abend
Rachus