Компания Hewlett-Packard начала передачу исходного кода операционной системы webOS открытому сообществу разработчиков. Полностью этот процесс должен завершиться в сентябре, но уже сейчас разработчикам стал доступен фреймворк Enyo второго поколения. Этот инструмент позволит создавать мультиплатформенные приложения для планшетов, смартфонов и настольных веб-браузеров.
Код Enyo уже доступен для свободной загрузки с GitHub. Enyo представляет собой объектно-ориентированный фреймворк для создания приложений на языке JavaScript с использованием стандартных web-технологий, продвигающий идеи модульности и инкапсуляции. Если первая версия фреймворка позволяла создавать приложения только для платформы webOS, то релиз Enyo 2.0 существенно расширяет область применения и теперь позволяет создавать универсальные программы, работающие в соответствии с парадигмой - "написано один раз, работает везде". Созданное с использованием Enyo 2.0 приложение будет работать не только на мобильных платформах, таких как webOS, Apple iOS и Android, но также и в обычных web-браузерах для настольных систем, включая Chrome, Firefox, Safari и Internet Explorer.
Разработка приложений с использованием Enyo мало чем отличается от написания обычных web-приложений - программа представляет собой каркас на HTML, в котором загружается JavaScript-библиотека Enyo; логика работы формируется в JavaScript блоках; интерфейс строится с использованием элементов "div". Ядро библиотеки Enyo занимает всего 13 Кб в сжатом виде. Enyo использует простую, но мощную модель инкапсуляции, позволяющую разбивать функциональность приложения на автономные блоки, которые легко поддерживать и которые могут быть повторно использованы в других проектах. Каждая часть использующего Enyo приложения является "компонентом" (базовый класс Component), при этом все компоненты строятся на базе других компонентов. Например, разработчик может создать на базе тегов input и label компонент LabeledInput и в дальнейшем использовать его как неделимое целое. Модель инкапсуляции Enyo подразумевает отсутствие нераздельных больших частей кода, вместо которых предлагается использовать совокупность небольших и неусложнённых компонентов. Подобный подход позволяет значительно упростить разработку и поддержку больших и сложных проектов.
В настоящее время полностью открыт код Enyo 1 и код ядра Enyo 2. Представляющая особенный интерес библиотека готовых виджетов, которые можно использовать для создания пользовательских интерфейсов, и связанный с ней тулкит будут открыты в следующие несколько месяцев. В марте планируется выпустить совместимый с Enyo 2 пакет виджетов, изначально созданных для Enyo 1. Примечательно, что если ядро Enyo 2 не зависит от типа браузера, то некоторые элементы Enyo UI используют специфичные возможности WebKit, что ограничивает их использование браузрами и мобильными платформами, базирующимися на WebKit. В апреле будет выпущена полнофункциональная интегрированная среда разработки приложений Ares 2, работающая внутри браузера.
(c) http://www.palmq.ru/article.php?sid=3009