Я не уверен, считается ли что-либо из следующего лучшей практикой.
Среда: Appcelerator Titanium/Alloy — платформа для создания нативных приложений. Он использует javascript в качестве источника, сравнимого с node.js (больше похоже на CommonJS).
Случай 1:
Многие файлы, где я использую:
var localInstance = require('main/module/sub/foobar')({ initialize: true});
Случай 2:
Основной файл, в котором я бы сделал глобальный:
Globalnamespace.foobar = require('main/module/sub/foobar');
И в других файлах:
var localInstanceWhichINeed = Globalnamespace.foobar({initialize: false});
Дело в том, что модуль нужен не везде, и помещение его в глобальное пространство имен может занять лишнюю память. Каждый модуль foobar
должен быть создан в каждом файле, поэтому нет глобального экземпляра (только модуль для создания экземпляра).
Я говорю о памяти мобильного устройства и пытаюсь ее сократить. Отсюда вопрос.