Pull to refresh

Comments 8

Конечно, совсем без бандлеров обходиться мы не собираемся, так как у нас большое количество модулей во всех проектах.


Если не секрет, а как при «большое количество модулей» бандлер лучше, чем связка native modules + HTTP/2? Меньше нагрузка на веб сервер? Так он вроде статику очень быстро раздает? Вы замеряли уже цифры, или пока только здравый смысл?
Пока не замеряли, но есть соблазн. Как минимум это было бы полезно при разработке, дебажить отдельные моудли, а не бандл. Так мы раньше поступали с RequireJS, пока он не перестал справляться с тем объемом файлов что у нас есть сейчас.

Скорость загрузки, в большей степени, будет зависить от длины цепочки зависимостей, а не только от скорости отдачи файлов HTTP/2. Иначе придется включать прелоад всех модулей, а это требует тулзы подобной бандлеру. В этом не очень много смысла.

Хоть убейте не понимаю в чём преимущество нативных модулей в браузере. Как сказал автор, бандлеры всё равно придётся использовать, потому что загружать 100 модулей на сайте всё же никто не будет (надеюсь). А вместо этого соберут пару бандлов и подгрузят их когда надо. Т.е. бандлеры остаются. Согласен, что удобно для разработки. Но тут возникает опасность, что разрабатывал в одной среде (100 нативных модулей), а в проде другая среда (пару больших бандлов).

Еще минус, что при загрузке модулей в браузере бандлеру/компилятору становится сложно удалять неиспользуемый код да и вообще делать какие либо меж-файловые оптимизации надо кодом.

Нативные модули конечно хороши как спецификация, чтобы избавится от разных реализаций модулей каждая из которых имеет свой синтаксис.
Не браузером единым.
Допустим у меня есть приложение с поддержкой скриптов ECMAScript. Кто-то из разработчиков скриптов реализовал нечто полезное, что может использоваться другими скриптами. Теперь вместо копипаста можно просто подключить модуль. И это афигенно! Я джва года ждал поддержки модулей.
Три раза перечитал ваше сообщение, но так и не понял, о чем вы. О браузере? Ну выше уже ответили, что смысла там в модулях мало. Про ноду? Так там commonjs-модули испокон веков. Какая копипаста?
Было бы полезно иметь возможность подгружать JS-файл внутрь другого JS-файла в расширениях для браузеров, где накладных расходов на HTTP-запросы нет, а использование сборщиков не слишком удобно.
Sign up to leave a comment.