Во-первых, я не видел настоящего настоящего стандарта , как с этим справиться. Но мы определенно можем добиться большего, чем просто длинные имена переменных ...
Вы правы относительно модулей кода Javascript, живущих в отдельном пространстве имен (так сказать), однако при импорте их не нужно импортировать в глобальное пространство имен. Если вы посмотрите документацию Components.utils.import , вы увидите, что вы можете импортировать данные в определенную область. То есть вам вообще не нужно загрязнять глобальное пространство имен .
Вы можете собрать свои модули в пространство имен myExtension
.
var myExtension = {};
Components.utils.import("resource://.../module.jsm", myExtension);
И оборачивая это внутри самореализующейся функции, вы не пропустите ни одной переменной в глобальное пространство имен, даже myExtension
!
(function(){
var myExtension = {};
Components.utils.import("resource://.../module.jsm", myExtension);
})();