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

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

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

Flash править

Java править

Microsoft править

Nokia править

Mozilla править

W3C править

Другие править

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

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 Архивная копия от 23 января 2021 на Wayback Machine, с поддержкой клиента, обеспечиваемой плагином браузера, который отображает 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 без необходимости описывать пути их изображений.

Другие править

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

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

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

Примечания править

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