В проекте , над которым я работаю, я структурирую свой код следующим образом
MyLib = {
AField:0,
ASubNamespace:{
AnotherField:"value",
AClass:function(param) {
this.classField = param;
this.classFunction = function(){
// stuff
}
}
},
AnotherClass:function(param) {
this.classField = param;
this.classFunction = function(){
// stuff
}
}
}
и так далее, чтобы делать такие вещи, как:
var anInstance = new MyLib.ASubNamespace.AClass("A parameter.");
Это правильный путь к достижению пространства имен? Есть ли хиты производительности, и если да, то насколько сильны? Снижается ли производительность по мере того, как я вкладываюсь глубже? Есть ли другие проблемы, о которых мне следует знать при использовании этой структуры?
Я забочусь о каждом небольшом уровне производительности, потому что это библиотека для графики в реальном времени, поэтому я очень серьезно отношусь к любым издержкам.