Описание тега meteor

Meteor - модульная платформа для разработки веб-приложений и мобильных приложений на JavaScript на базе платформы NodeJS.

Meteor - модульная платформа для разработки веб-приложений и мобильных приложений на чистом JavaScript (хотя могут использоваться и другие языки). Meteor построен на одной объединяющей идее: серверы должны предоставлять клиентам данные, а не HTML, и должны отправлять обновления клиентам при изменении данных. Затем клиент должен решить, как визуализировать данные.

Метеор состоит из двух частей:

  • Набор пакетов, из которых разработчик может выбирать. Доступен набор основных пакетов, которые выполняют общие задачи, такие как отслеживание изменений в базе данных или повторное отображение HTML-шаблона при изменении данных. Системы шаблонов, такие как пробелы (на основе Handlebars и выпущенные вместе с Meteor 0.8), базы данных, такие как mongodb, такие языки, как coffeescript, и клиентские фреймворки, такие как backbone.js, доступны в виде пакетов.

  • Инструмент командной строки meteor, который считывает дерево исходного кода приложения и любые пакеты, используемые приложением, и записывает архив, готовый к развертыванию. Тарболом может быть распакованы и работать везде, где есть node.js.


Основные технологии Meteor:

  • Hot Code Push. При повторном развертывании приложения Meteor может прозрачно внедрить обновление в каждую вкладку браузера, на которой открыто приложение, без потери места пользователя в приложении.

  • DDP. Простой протокол для публикации набора записей JSON (скажем, текущих историй в ленте новостей пользователя X вместе со всеми комментариями к этим историям), а затем поддержания их в актуальном состоянии с помощью создания, обновления и удаления сообщений. DDP может работать через веб-сокеты или длинный опрос AJAX и поддерживает прозрачное переподключение. Все, что говорит по DDP, может подключаться к серверу Meteor (не только клиентам Meteor); Клиенты Meteor могут подключаться к любому серверу DDP (не только к собственному серверу Meteor).

  • Движок обновления страницы в реальном времени. Это слой, который подходит под любую систему шаблонов (например, Handlebars или Jade), чтобы отображаемый шаблон автоматически обновлялся на месте, независимо от того, где он вставлен в DOM. Это делается путем рендеринга шаблона в контексте, в котором записываются его обращения к данным, а затем подключения обратных вызовов для отслеживания местоположения визуализированных узлов DOM и повторного рендеринга шаблона, если данные изменяются.

  • Компенсация задержки. Когда пользователь вносит изменения, его собственный экран может обновляться немедленно, не дожидаясь сервера. Это делается (необязательно) путем выполнения кода обновления модели как на клиенте, так и на сервере. После того, как сервер ответил на запрос, если он там выполнялся по-другому, состояние клиента исправляется, чтобы соответствовать серверу.

  • Умные пакеты. Пакеты Meteor - это на самом деле небольшие программы JavaScript, которые загружаются во время развертывания. Настраивая обратные вызовы с помощью API-интерфейса сборщика, они могут внедрять код в клиент или сервер, регистрировать новые расширения файлов, предварительно скомпилировать шаблоны, предварительно обрабатывать исходный код и т. Д., Позволяя автору пакета обеспечить плавную интеграцию. Начиная с Meteor 1.3, npm также стал полностью поддерживаться.


Официальные ресурсы:


Дополнительные ресурсы:

Связанный