Представлен SeedKit, проект для создания GNOME-приложений на базе web-технологий
В состав пакета входит JavaScript-библиотека для формирования интерфейса пользователя, позволяющая обращаться к объектам GObjects, GTK-виджетам, обрабатывать события, взаимодействовать DBus и вызывать функции низкоуровневых библиотек GNOME. В качестве основы библиотеки выступает браузерный движок WebKit. Вторым элементом является SeedKit Viewer - управляемая через командную строку среда для исполнения и отображения приложений. По заявлению разработчиков, написанные с использованием web-технологий программы по внешнему виду, интеграции с рабочим столом и взаимодействию с пользователем ничем не отличаются от классических GNOME-приложений.
Отдельно отмечается, что SeedKit предоставляет возможность разработчикам создания гибридных GTK+ приложений, в которых код на языках Си и Vala совмещается со встроенными элементами интерфейса, подготовленными с использованием SeedKit. В SeedKit допускается использование сторонних JavaScript библиотек, таких как JQuery, ExtJS и Dojo. Для разработчиков сайтов SeedKit может представлять интерес с точки зрения подготовки специализированного для просмотра данного сайта приложения-браузера, которое может поддерживать такие функции как запуск из меню GNOME и вывод уведомлений.
Разработка SeedKit велась под впечатлением от webOS SDK и Mozilla JetPack. Первая версия SeedKit позиционируется как ранний экспериментальный релиз, стабилизация кодовой базы и формирование API будет завершено к моменту выпуска стабильного релиза 1.0, до этого времени совместимость API между выпусками не гарантируется. Исходные тексты библиотеки распространяются в рамках лицензии LGPLv3, а SeedKit Viewer - GPLv3. Для работы SeedKit требует установки предварительной версии библиотеки GTK+ 3.0.
К слову, в Qt сейчас также наблюдается тенденция к переходу к декларативным средствам построения интерфейса пользователя - QML, в качестве языка для создания сценариев в котором используется JavaScript, а структура и параметры элементов интерфейса задаются CSS-подобными блоками, представляющими собой определение JavaScript-объектов. QML-компоненты могут быть не только интегрированы в состав проектов на языке C++, но и работать в виде обособленных графических приложений, логика функционирования которых задана целиком на языке JavaScript.
Источник: http://www.opennet.ru/opennews/art.shtml?num=27681
|
0 | Tweet | Нравится |
|