Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Mit dem Sandbox-Muster lassen sich die folgenden Nachteile des Namensraum-Musters umgehen:
Es gibt nur eine globale Variable für die »Anwendung«. Im Namensraum-Muster kann man nicht zwei verschiedene Versionen der gleichen Anwendung oder Bibliothek auf der gleichen Seite laufen lassen, da beide das gleiche globale Symbol benötigen – zum Beispiel MYAPP.
Es müssen lange, durch Punkte unterteilte Namen eingegeben und zur Laufzeit aufgelöst werden – zum Beispiel MYAPP.utilities.array.
Wie der Name schon andeutet, stellt das Sandbox-Muster eine Umgebung für die Module bereit, in der sie »spielen« können, ohne andere Module und deren eigene Sandboxen zu beeinflussen.
Dieses Muster wird zum Beispiel in YUI Version 3 sehr intensiv genutzt, aber beachten Sie, dass in den folgenden Abschnitten nur eine Beispiel-Implementierung vorgestellt und nicht beschrieben wird, wie die Sandbox in YUI3 implementiert ist.