В project Я работаю над созданием своего кода следующим образом
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.");
Это правильный путь для достижения пространства имен? Имеются ли показатели производительности, и если да, то насколько они радикальны? Ухудшение производительности происходит, когда я гнезду глубже? Есть ли какие-либо другие проблемы, о которых я должен знать при использовании этой структуры?
Я забочусь о каждом небольшом количестве производительности, потому что это библиотека для графики в реальном времени, поэтому я очень серьезно отношусь к любым накладным расходам.