Backbone под NodeJS: мало файлов vs много файлов
Размышляю о двух полярных подходах к внутреннему устройству Backbone приложения:
Подход 1: Максимальная декомпозиция до уровня отдельных объектов (каждая модель, коллекция, вид, роутер и т.д. - отдельный js файл)
model.js (model)
collection.js (collection)
view.js (view)
router.js (router)
...
app.js
Подход 2: Максимальная композиция до уровня отдельных модулей (все модели, коллекции, виды, роутеры и т.п. для отдельного модуля собираются в один js файл)
module.js (model, collection, view, router)
...
app.js
В первом случае количество http запросов может значительно превышать второй вариант. Встречал мнение, что много параллельных запросов не есть хорошо (всплывала магическая цифра 4 как некий предел, который превышать нежелательно). Однако, хозяева мнения не уточняли: нехорошо для какого сервера. Может для apache нехорошо, а node.js как раз себя и проявляет в таких ситуациях с прекрасной стороны.
Вопрос: Какой подход когда выбирать? Необходимость управляться с кучей файлов до каких-то разумных пределов не пугает (require.js как вариант). Приложение работает под node.
|