Подтвердить что ты не робот

Один большой файл javascript или несколько меньших файлов?

Хорошо, поэтому у меня есть проект разумного размера, где я использую jquery basebone и пару других javascript-библиотек. Мне было интересно, должен ли я иметь один файл для моих javascript-библиотек, а другой для моего собственного кода. Или куча отдельных файлов javascript.

4b9b3361

Ответ 1

Как правило, рекомендуется иметь меньше HTTP-запросов. Поэтому вы должны уменьшить количество файлов настолько, насколько это разумно.

Мои личные предпочтения состоят в том, чтобы иметь три "группы" файлов JavaScript:

  • Основной файл. Содержит функции, которые используются почти везде и другие полезные функции инициализации страницы.
  • Файлы модулей. Содержит код, который используется в нескольких местах, но не везде. Может быть включен, чтобы обеспечить дополнительную функциональность. Например, если у вас есть script для обработки входов даты, вы можете включить его в качестве файла модуля и добавить его на страницы с вводом даты.
  • Файлы, специфичные для страницы. Эти файлы содержат код, который используется только в одном месте. Единственная причина, по которой они добавляются как отдельные файлы, а не как часть самой страницы, - это причины кэширования.

Ответ 2

Один большой файл. Вы должны минимизировать код, когда он идет на производство, и сжимать его, если он большой. Вы хотите сделать как можно меньше запросов на сервер, чтобы повысить производительность страницы

Ответ 3

Один большой файл или два файла: один маленький и один большой. Чтобы быть ясным, во время разработки хорошо иметь отдельные файлы - возможно, используя что-то вроде requireJS. Но при развертывании он хорошо сжимает все в одном файле, чтобы уменьшить задержку HTTP и запросы.

Я упомянул два файла. В некоторых случаях может быть полезно иметь один небольшой файл, который выполняет операции "bootstrap", между тем "большой файл", особенно если он действительно большой, загружается. Это особенно полезно для первого доступа, поскольку пользователи еще не кэшировали ваши файлы.

Ответ 4

Лучше всего разделить его, но не переусердствовать. Таким образом, вы можете повторно использовать свой библиотечный код позже. Кроме того, всем нравится работать с отдельными файлами больше, потому что он держит вещи более организованными.

Тем не менее, также лучше всего предоставить пользователю один сжатый файл, чтобы все можно было легко кэшировать, а это также уменьшает количество запросов страниц. Rails 3 делает это автоматически в конвейере активов, например. Вы можете написать script для запуска своего любимого компрессора. Но вы не должны жертвовать читабельностью кода для этого - вы можете получить свой торт и съесть его тоже!

Ответ 5

Как было предложено, хорошо работать с меньшими файлами, но для производственного кода ваш процесс сборки должен включать оптимизацию. Часть этой оптимизации должна минимизировать размеры файлов и оптимизировать сетевой трафик, объединив их в один файл js, чтобы уменьшить количество вызовов, сделанных браузером.

Ответ 6

Как правило, я стараюсь как можно меньше сократить количество запросов на сервер.

Ответ 7

Зависит от размера вашего приложения. Но обычно всегда лучше группировать файлы javascript соответствующим образом для лучшей ремонтопригодности и повторного использования.

Для загрузки JavaScript вы можете использовать загрузчик модуля JS, например RequireJS. По крайней мере, файлы будут организованы. Вы можете повысить производительность сервера, убедившись, что эти файлы можно кэшировать в пользовательских браузерах, чтобы они загружали их только один раз.