Список языков описания пользовательских интерфейсов
Список языков описания пользовательских интерфейсов
По свойствам и применению
правитьUIML
правитьUIML — пионер в языках разметки пользовательского интерфейса. Это открытый стандарт, реализации которого не ограничены единственным производителем. Однако, он не привлек большого внимания.
XUL
правитьXUL — основной язык интерфейсов программ Mozilla Foundation. Документы XUL создаются движком Gecko, который также визуализирует документы XHTML и SVG. Он взаимодействует со многими существующими стандартами и технологиями, включая CSS, JavaScript, DTD и RDF, которые делают его относительно простым для изучения людьми с поверхностными знаниями веб-программирования и дизайна.
XAL
правитьРасширяемый язык приложений (англ. eXtensible Application Language) — язык разметки из Nexaweb's Enterprise Web 2.0 Suite. Разработчики могут использовать этот язык для описания приложений, которые будут запускаться как клиент Java или AJAX.
SVG
правитьScalable Vector Graphics — язык разметки для графики, предложенный W3C, который может поддерживать графику с широкими возможностями для веб-приложений и мобильных приложений. Несмотря на то, что SVG не является языком описания пользовательского интерфейса, он включает поддержку векторной/растровой графики, анимации, взаимодействия с DOM и CSS, встроенного media, событий и скриптов. При комбинировании этих возможностей возможно создание интерфейсов пользователя с широкими возможностями.
XAML
правитьXAML — система разметки, которая лежит в основе компонентов пользовательского интерфейса Microsoft .NET framework 3.0 и выше. Его область применения более амбициозная, чем у большинства языков разметки пользовательского интерфейса, так как в XAML документ также включены программная логика и стили. Функционально, его можно рассматривать как комбинацию XUL, SVG, CSS и JavaScript в одной схеме XML.
I3ML
правитьI3ML — собственнический механизм доставки приложений с тонким клиентом, разработанный CoKinetic Systems Corp Шаблон:Wayback, с поддержкой клиента, обеспечиваемой плагином браузера, который отображает Windows-подобные приложения через инфраструктуру HTTP с минимальной необходимой полосой пропускания.
OpenLaszlo (LZX)
правитьOpenLaszlo — платформа для разработки и доставки RIA приложений, включающая среду исполнения и язык описания интерфейса (Laszlo XML — LZX). LZX — декларативный язык описания пользовательского интерфейса, определяющий виджеты, компоновку приложений и скриптовые элементы (используя JavaScript) для создания приложений.
HMVCUL
правитьHierarchical Model View Controller User Interface Language (HMVCUL) — язык описания пользовательского интерфейса, основанный на XML, который поддерживает создание и связывание элементарных компонентов MVC триады, используемых в создании HMVC GUI приложений. Связанная среда исполнения предоставляет методы, которые делают возможной настройку свойств, привязки данных и событий каждого из элементов MVC триады (модель, виджет, контроллер). Среда исполнения достигает этого отображением XML элементов, определенных в HMVCUL файле, в объекты внутри фреймворка, а атрибутов — в свойства или события. Связывание достигается отслеживанием древовидной структуры, описанной в HMVCUL файле.
WasabiXML
правитьWasabiXML — язык разметки, основанный на XML, используемый для определения графического интерфейса в приложениях Wasabi. Это очень часто используется в Winamp для создания скинов (skins). WasabiXML разработан Nullsoft для Winamp, но также может быть использован и с другими приложениями с Wasabi SDK.
Корневой элемент в WasabiXML <WasabiXML>
(для скинов Winamp, это также <WinampAbstractionLayer>
). Элемент <skininfo>
показывает информацию о скине. Графический интерфейс содержится в элементе <container>
и базовый видимый элемент GUI — <layout>
. Пример простого GUI с элементом кнопка (button):
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<WinampAbstractionLayer version="1.2">
<skininfo>
<version>1</version>
<name>mySkin</name>
<comment>Ooo Lala</comment>
<author>Some Person</author>
<email>info@example.org</email>
<homepage>http://www.example.org</homepage>
</skininfo>
<include file="xml/color-sys.xml"/> <!-- Include a file -->
<container id="normal">
<layout id="normal" desktopalpha="true">
<button
x="0" y="0"
id="button.normal"
image="mybutton.image"
hoverimage="mybutton.himage"
downimage="mybutton.dimage"
/>
</layout>
</container>
</WinampAbstractionLayer>
WasabiXML поддерживает многие элементы GUI, включая:
<button>
<text>
<vis>
<eqvis>
<layer>
<animatedlayer>
<groupdef>
используемый в соединении с<group>
WasabiXML имеет пространство имен XML 'Wasabi::', которое определяет основные GUI без необходимости описывать пути их изображений.
Другие
правитьДругие языки разметки, встроенные в существующие фреймворки:
- GladeXML — язык разметки для создания графических интерфейсов на основе GTK+
- VTML для Macromedia HomeSite
Некоторые из них скомпилированы в бинарные формы.
В авионике стандарты ARINC 661 предписывают бинарный формат для описания пользовательских интерфейсов в стеклянных кабинах пилота.
По производителю или платформе
правитьFlash
правитьJava
правитьMicrosoft
правитьNokia
правитьMozilla
правитьW3C
правитьДругие
правитьПримечания
править- ↑ (См. также HTA, подобная технология, ранее продвигаемая Microsoft для использования главным образом с Internet Explorer.)