Twitter представил новый открытый JavaScript-фреймворк Flight

Материал из Викиновостей, свободного источника новостей

1 февраля 2013 года

Компания Twitter, развивающая популярный сервис микроблогов, анонсировала новый событийно-ориентированный JavaScript-фреймворк Flight (Архивная копия от 8 марта 2013 на Wayback Machine), код которого открыт под лицензией MIT. Фреймворк составляет основу клиентской части кода, используемого в новом варианте сайта Twitter, который был введён в строй в прошлом году. Работа Flight протестирована во всех современных браузерах, в том числе в Chrome, Firefox, Safari, Opera и IE7. Из зависимостей используются библиотеки ES5-shim и JQuery.

В отличие от других фреймворков, Flight не навязывает и не предоставляет какие-то конкрентые методы для рендеринга или получения данных. Фреймворк не заботится о том, как именно организован маршрут обработки запросов, какие шаблонизаторы используются и генерируется ли HTML на стороне сервера или клиента. Вместо этого Flight базируется на организации работы поверх уже присутствующей модели DOM, привязывая требуемую функциональность непосредственно к узлам DOM. Подобный подход позволяет не только избежать необходимости задействования дополнительных структур данных, усложняющих архитектуру web-приложения, но и упростить привязку дополнительной функциональности для уже существующих web-приложений.

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

Подписка на обработку определённых типов событий осуществляется с использованием привязки к элементам дерева DOM, при этом таким способом организуется как подписка на нативные события, связанные с узлами DOM, так и на события генерируемые другими компонентами, и те и другие события обрабатываются идентично. В простейшем случае, для реализации нужной функциональности достаточно создать новый компонент и привязать его к DOM-узлу, после чего компонент будет получать связанные с узлом события и сможет манипулировать любыми элементами этого узла. Пример простейшего web-приложения, созданного с использованием Flight, можно посмотреть

Источники[править]


Creative Commons
Creative Commons
Эта статья содержит материалы из статьи «Twitter представил новый открытый JavaScript-фреймворк Flight», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии[править]

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.