воскресенье, 20 марта 2011 г.

Создание большого приложения на Javascript

Управление зависимостями

Когда вы пишете большое приложение, вам иногда бывает нужно определить порядок загрузки скриптов. Например, загружать func.js до app.js. Хотя традиционный подход упорядочивания тегов script может вас устроить во многих случаях, загрузчики скриптов могут дать вам дополнительные возможности в управлении загрузкой. Например, загрузка в зависимости от возможностей браузера, динамическая загрузка по условию.
Наиболее популярные загрузчики - это RequireJS (от James Burke) и LabJS (от Kyle Simpson). Каждый из них имеет свои плюсы и минусы. По моему опыту, RequireJS имеет больше возможностей и поддерживает структурированные модули, в то время как LabJS наиболее подходит, если вам нужно что-то легкое и не нужно много фич.

Библиотеки:
  • RequireJS – я рекомендую эту библиотеку, если вы планируете делать ваш код модульным. Модули ограничивают влияние кода на глобальное пространство имен и позволяют более точно определять прямые зависимости. RequireJS также имеет инструмент для оптимизации, который позволяет вам комбинировать и группировать ваши скрипты в минимизированные копии, которые быстро загружаются. http://requirejs.org/
  • LabJS – это лучшее решение, если вы хотите эффективно загружать скрипты в определенном порядке и вам нужно более легкое решение, чем RequireJS, либо вас не интересует модульный подход в управлении зависимостями. http://www.labjs.com (и еще гляньте YepNope JS - отличный загрузчик, работающий по условиям, который работает на базе LabJS: http://www.yepnopejs.com).
  • StealJS – другой отличный инструмент управления зависимостями. StealJS - это часть пакета JavaScriptMVC, но вы можете использовать его отдельно. Включает в себя конкатенацию, компрессию и чистку кода. http://jupiterjs.com/news/stealjs-script-manager
  • JSL Script Loader – другой достойный инструмент, который поддерживает ленивую загрузку, упорядоченную загрузку, предотвращает повторную загрузку и кэширует. Не так интенсивно протестирован как LabJS и Require –  http://www.andresvidal.com/jsl
  • Bootstrap - имеет меньше возможностей, чем другие, но делает свою работу. Лучший вариант, если вы ищете минимальное решение без всяких наворотов. https://bitbucket.org/scott_koon/bootstrap  
Читать дальше 


Комментариев нет:

Отправить комментарий