Список языков описания пользовательских интерфейсов

Список языков описания пользовательских интерфейсов


По свойствам и применению

править

UIML — пионер в языках разметки пользовательского интерфейса. Это открытый стандарт, реализации которого не ограничены единственным производителем. Однако, он не привлек большого внимания.

XUL — основной язык интерфейсов программ Mozilla Foundation. Документы XUL создаются движком Gecko, который также визуализирует документы XHTML и SVG. Он взаимодействует со многими существующими стандартами и технологиями, включая CSS, JavaScript, DTD и RDF, которые делают его относительно простым для изучения людьми с поверхностными знаниями веб-программирования и дизайна.

Расширяемый язык приложений (англ. eXtensible Application Language) — язык разметки из Nexaweb's Enterprise Web 2.0 Suite. Разработчики могут использовать этот язык для описания приложений, которые будут запускаться как клиент Java или AJAX.

Scalable Vector Graphics — язык разметки для графики, предложенный W3C, который может поддерживать графику с широкими возможностями для веб-приложений и мобильных приложений. Несмотря на то, что SVG не является языком описания пользовательского интерфейса, он включает поддержку векторной/растровой графики, анимации, взаимодействия с DOM и CSS, встроенного media, событий и скриптов. При комбинировании этих возможностей возможно создание интерфейсов пользователя с широкими возможностями.

XAML — система разметки, которая лежит в основе компонентов пользовательского интерфейса Microsoft .NET framework 3.0 и выше. Его область применения более амбициозная, чем у большинства языков разметки пользовательского интерфейса, так как в XAML документ также включены программная логика и стили. Функционально, его можно рассматривать как комбинацию XUL, SVG, CSS и JavaScript в одной схеме XML.

I3ML — собственнический механизм доставки приложений с тонким клиентом, разработанный CoKinetic Systems Corp Шаблон:Wayback, с поддержкой клиента, обеспечиваемой плагином браузера, который отображает Windows-подобные приложения через инфраструктуру HTTP с минимальной необходимой полосой пропускания.

OpenLaszlo (LZX)

править

OpenLaszlo — платформа для разработки и доставки RIA приложений, включающая среду исполнения и язык описания интерфейса (Laszlo XML — LZX). LZX — декларативный язык описания пользовательского интерфейса, определяющий виджеты, компоновку приложений и скриптовые элементы (используя JavaScript) для создания приложений.

Hierarchical Model View Controller User Interface Language (HMVCUL) — язык описания пользовательского интерфейса, основанный на XML, который поддерживает создание и связывание элементарных компонентов MVC триады, используемых в создании HMVC GUI приложений. Связанная среда исполнения предоставляет методы, которые делают возможной настройку свойств, привязки данных и событий каждого из элементов MVC триады (модель, виджет, контроллер). Среда исполнения достигает этого отображением XML элементов, определенных в HMVCUL файле, в объекты внутри фреймворка, а атрибутов — в свойства или события. Связывание достигается отслеживанием древовидной структуры, описанной в HMVCUL файле.

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 без необходимости описывать пути их изображений.

Другие

править

Другие языки разметки, встроенные в существующие фреймворки:

Некоторые из них скомпилированы в бинарные формы.

В авионике стандарты ARINC 661 предписывают бинарный формат для описания пользовательских интерфейсов в стеклянных кабинах пилота.

По производителю или платформе

править

Другие

править

Примечания

править
  1. (См. также HTA, подобная технология, ранее продвигаемая Microsoft для использования главным образом с Internet Explorer.)