Причины, по которым платформа webOS может быть интересна энтузиастам
В блоге компании Hewlett-Packard появилась статья, в которой представлены 10 причин, по которым мобильная платформа webOS может быть интересна представителям открытого сообщества.- Система бесплатна для разработчиков, от которых не требуется плата за использование SDK или за размещение своих программ в каталоге приложений. Действует программа по которой разработчикам предоставляются скидки при покупке основанных на webOS устройств;
- Наличие полного контроля над устройством, штатная возможность получения root-доступа на своем телефоне через включение режима разработчика (в панели поиска достаточно набрать кодовое слово "upupdowndownleftrightleftrightbastart"). В режиме разработчика получить доступ в shell можно через терминал novaterm, SSH или примонтировав дисковый раздел по USB;
- Ключевыми компонентами системы являются Linux-ядро и браузерный движок WebKit. В стандартной поставке имеются штатные утилиты, подобные cp, vi, grep, find, diff, top, tar и gzip. Имеется поддержка запуска ssh и gdb;
- Использование стандартных и распространенных технологий: большинство пользовательских приложений написаны на языке JavaScript с оформлением на базе HTML и CSS. Доступен фреймворк (Mojo для webOS 2.x и Enyo для webOS 3.0+) для быстрой разработки программ с возможностью доступа к системным ресурсам. Дополнительно поддерживается работа сторонних мобильных JavaScript-фреймворков. Для желающих создавать программы на языках C и C++, предлагается использовать инструментарий сборки GCC в сочетании с API SDL и OpenGL ES;
- Лёгкая доступность исходных текстов. Так как приложения написаны на JavaScript и доступны в исходных текстах, у разработчиков под рукой всегда имеется большой набор готовых примеров по использованию всех аспектов работы с устройством. Стандартные приложения, поставляемые по умолчанию, можно найти в каталоге /usr/palm/applications (для JavaScript-кода, сжатого для ускорения загрузки программ, оригинальный код как правило также доступен). Все используемые в webOS патчи к сторонним открытым проектам доступны для свободной загрузки на сайте opensource.palm.com;
- Наличие низкоуровневых инструментов для матёрых разработчиков. Кроме интегрированной среды разработки на базе платформы Eclipse, программистам предоставлена возможность использования инструментов в режиме командной строки, таких как утилиты palm-package и palm-install. Эмулятор платформы является ничем иным, как сборкой webOS для архитектуры x86, запущенной под управлением системы виртуализации VirtualBox. Дополнительно на базе кода Mozilla Bespin создана web-ориентированная среда разработки Areas, работающая внутри обычного браузера;
- Возможность вмешиваться в работу низкоуровневых подсистем. Приложения могут быть связаны с внутренними сервисами, основанными на серверной JavaScript-платформе node.js. JavaScript-программы могут вызывать скомпилированный бинарный код, используя гибридную модель разработки при помощи PDK, позволяющем оформлять нативный код в виде плагина. Для работы с 3D графикой могут быть использованы прямые вызовы OpenGL ES API, также доступны такие функции, как удаленное управление устройством через Bluetooth;
- Всеобъемлющая поддержка разработчиков: на форумах проекта можно пообщаться с непосредственными создателями системы и получить консультацию от работников инженерного отдела. Периодически в разных уголках мира проводятся конференции и встречи разработчиков, подобные мероприятиям Developer Workshops;
- Энтузиастам предоставлена возможность изменения внутренностей системы, например, можно заменить стандартное Linux-ядро на собственную сборку, запустить собственные системные сервисы или установить инструменты для оверлокинга. Многие из созданных силами сообщества улучшений попадают в основные релизы webOS. Например, для версии webOS 1.4.5 энтузиастами была реализована поддержка сжатия для системы кэширования страниц памяти, в дальнейшем эта поддержка была интегрирована в основное ядро из состава webOS 2.0. Hewlett-Packard не пытается остановить или как-то препятствовать работе групп, экспериментирующих с начинкой webOS, более того, компания старается при возможности предоставить таким группам оборудование для упрощения проведения исследований;
- HP способствует созданию открытых приложений для webOS. Многие из лучших программ, представленных в каталоге App Catalog, распространяются с открытыми исходными текстами. Среди таких программ FourSquare, drPodder, pReader, Spaz (Twitter-клиент), Relego (клиент Read It) и Preware. Кроме создания открытых программ с нуля, интенсивно ведется портирование для webOS уже доступных для других платформ приложений, например, поддержка SDL API позволила начать портировать игры, созданные для платформы Linux. Ведется работа по адаптации для работы в webOS дополнительных языков программирования, инструментов и Linux-технологий.
Полный текст статьи читайте на OpenNet