Компания HP представила план открытия платформы webOS и открыла код фреймворка Enyo

26 января 2012 года

Компания Hewlett-Packard представила план открытия кода мобильной платформы webOS, который подразумевает перевод в разряд открытых всех компонентов платформы и создание специальной некоммерческой организации, которая будет курировать развитие проекта и принимать связанные с ним решения. В сентябре планируется выпустить первый релиз открытого варианта платформы webOS. Код будет открыт под лицензией Apache 2.0.

В качестве первого шага на пути к превращению webOS в открытый проект объявлено об открытии кода фреймворка для быстрой разработки мобильных приложений Enyo 2.0. Код 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, работающая внутри браузера.

Что касается планов по открытию webOS, то в первой половине года компания HP намерена представить код отдельных элементов платформы - от кода базовой системы на основе ядра Linux и пользовательской оболочки до кода конечных приложений, таких как почтовый клиент и календарь-планировщик. Полностью завершить открытие всей кодовой базы webOS планируется в сентябре, тогда же будет сформирован первый открытый релиз. Среди интересных проектов, которые в ближайшее время будут открыты, можно отметить (Архивная копия от 22 октября 2014 на Wayback Machine) развиваемую силами HP сборку web-движка WebKit, которая поддерживает не только HTML5, но и позволяет использовать плагины Silverlight и Flash. Используя данную сборку WebKit, можно выполнить отрисовку web-страниц в виде HTML Canvas и 3D-текстур, а также использовать расширенные методы ввода, такие как мультитач. Также планируется выпустить вариант ядра Linux и улучшить интеграцию с JavaScript через реализацию регистрации callback-вызовов, а также использовать собственную многопроцессную архитектуру для обеспечения безопасности, механизмы балансировки нагрузки и дополнительные возможности по восстановлению после сбоев. Для хранения данных в открытом варианте платформы webOS будет задействована БД LevelDB.

План открытия кода:

  • Январь: открытие кода Enyo 2.0 и Enyo 1;
  • Февраль: Подготовка модели организации управления разработкой. Открытие кода расширений к Qt WebKit, движка JavaScript и набора виджетов UI Enyo;
  • Март: Публикация наработок, связанных с ядром Linux и БД LevelDB. Открытие расширений к EGL и USB-подсистеме.
  • Апрель: Выпуск среды разработки Ares 2.0 и обновления фреймворка Enyo 2.1. Открытие кода сервисов для Node.js;
  • Июль: Открытие системного менеджера Luna, шины для взаимодействия компонентов системы, базовых пользовательских приложений. Выпуск обновления фреймворка Enyo 2.2;
  • Август: Доступность инструментария и модели для сборки релизов, выпуск бета-версии проекта Open webOS;
  • Сентябрь: Релиз Open webOS 1.0.

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

WebOS является многозадачной ОС и отличается тесной интеграцией с интернет-технологиями и широким использованием web-приложений. Весь пользовательский интерфейс WebOS оформлен с использованием CSS, HTML5 и JavaScript. Для разработки приложений на языках C/C++ и для организации прямого доступа к низкоуровневому API платформы доступен Plug-in Development Kit. Обмен данными между приложениями построен на основе шины, манипулирующей данными в формате JSON. Для доступа web-приложений к системному API используется D-Bus Bridge. В качестве основы платформы выступает браузерный движок WebKit. Вместо окон в webOS используется парадигма сменяющих друг друга карт. Поддерживается навигация через жесты и одновременные касания к экрану (мультитач режим). Среди особенностей webOS поддержка бесшовного обмена данными между устройствами, при котором пользователь планшета TouchPad может передать ссылку пользователю телефона Pre 3 просто приблизив аппараты и перетащив ярлык. В стандартной поставке имеются штатные утилиты, подобные ssh, cp, vi, grep, find, diff, top, tar и gzip.

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


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

Комментарии

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