Un lenguaje de marcado de interfaz de usuario es un lenguaje de marcado que representa y describe controles y interfaces de usuario gráficos . Muchos de estos lenguajes de marcado son dialectos de XML y dependen de un motor de lenguaje de secuencias de comandos preexistente , generalmente un motor de JavaScript , para la representación de los controles y la capacidad de secuencias de comandos adicional.
El concepto de los lenguajes de marcado de la interfaz de usuario se basa principalmente en el deseo de evitar la " reinvención de la rueda " en el diseño, desarrollo y función de una interfaz de usuario; tal reinvención viene en forma de codificación de un script para toda la interfaz de usuario. El lenguaje de marcado de la interfaz de usuario típico solidifica el código de programa o script que a menudo se reutiliza en forma de marcado, lo que facilita centrarse en el diseño de una interfaz de usuario en un dialecto comprensible en lugar de centrarse en la función.
Los lenguajes de marcado de la interfaz de usuario, como la mayoría de los lenguajes de marcado y programación, se basan en tiempos de ejecución de sub-aplicaciones para interpretar y representar el código de marcado como código de programa que se puede procesar y publicar en la forma deseada. En los lenguajes de marcado de interfaz de usuario basados en XML, el marcado generalmente se interpreta y representa como un árbol de nodos que pueden ser manipulados en tiempo de ejecución por el código de la aplicación o la secuencia de comandos de usuario cargada dinámicamente .
Lenguajes de marcado de la interfaz de usuario
XFD
XFD, que significa X ML F orm D efinition, es el lenguaje de marcado de la interfaz de usuario detrás del producto STARLIMS ( http://www.starlims.com [ enlace muerto permanente ] ), desarrollado por Abbott Informatics. El producto STARLIMS tiene un ecosistema completo de tiempo de ejecución y herramientas de tiempo de diseño para ejecutar y crear formularios visuales utilizando el lenguaje XFD. STARLIMS v10 funciona con un tiempo de ejecución XFD desarrollado con Microsoft .NET Framework y alojado en el navegador Internet Explorer. STARLIMS v11 introduce un motor XFD adicional basado en un motor de transformación del lado del servidor que transforma el XFD en datos compatibles con HTML5 diseñados para ejecutarse en cualquier navegador compatible con HTML5. XFD es programable en lenguaje basado en JavaScript.
QML
QML es un lenguaje de marcado multiplataforma para crear interfaces de usuario con tecnología OpenGL aceleradas por hardware para dispositivos que van desde dispositivos móviles hasta computadoras de escritorio. Las interfaces QML se manipulan utilizando el lenguaje JavaScript. QML es parte del Proyecto Qt , originalmente propiedad de Nokia, pero ahora propiedad de Digia.
MXML
MXML es el lenguaje de marcado de la interfaz de usuario basado en XML introducido por Macromedia en marzo de 2004. Ahora es parte del Open Source ( http://opensource.adobe.com ) Adobe Flex SDK versión 4. Los archivos MXML se compilan en Flash SWF a través del Flex SDK, y se procesan en el navegador de Internet, a través del complemento Adobe Flash , o como aplicaciones multiplataforma independientes, a través del Open Source Adobe AIR SDK.
UIML
OASIS UIML es un lenguaje de marcado de interfaz de usuario estándar basado en XML. [ cita requerida ] Es un estándar abierto donde la implementación no está restringida a un solo proveedor.
XUL
El idioma de interfaz principal de los productos de Mozilla Foundation es XUL . Los documentos XUL son procesados por el motor Gecko , que también procesa documentos XHTML y SVG . Coopera con muchos estándares y tecnologías existentes, incluidos CSS , JavaScript , DTD y RDF .
UsiXML
UsiXML (que significa Us er I nterface E x tensible M arkup L anguage) es un lenguaje de marcado compatible con XML que describe la interfaz de usuario para múltiples contextos de uso, como interfaces de usuario de caracteres (CUI), interfaces gráficas de usuario (GUI), audio Interfaces de usuario e interfaces de usuario multimodales. En otras palabras, las aplicaciones interactivas con diferentes tipos de técnicas de interacción, modalidades de uso y plataformas informáticas pueden describirse de manera que se preserve el diseño independientemente de las características peculiares de la plataforma informática física.
WTKX
WTKX es un lenguaje de marcado basado en XML que se utiliza para crear aplicaciones Apache Pivot . Aunque se usa más comúnmente para definir la estructura de la interfaz de usuario de una aplicación, se puede usar para construir declarativamente cualquier tipo de jerarquía de objetos Java.
XAL
eXtensible Application Language es el lenguaje de marcado de Enterprise Web 2.0 Suite de Nexaweb . Los desarrolladores pueden usar este lenguaje para definir aplicaciones que se ejecutarán como Cliente Java o Cliente Ajax .
SVG
Scalable Vector Graphics es un lenguaje de marcado para gráficos propuesto por el W3C que puede admitir gráficos enriquecidos para aplicaciones web y móviles. Si bien SVG no es un lenguaje de interfaz de usuario, incluye soporte para gráficos vectoriales / rasterizados, animación, interacción con DOM y CSS, medios incrustados, eventos y capacidad de secuencia de comandos. Cuando estas funciones se utilizan en combinación, son posibles interfaces de usuario enriquecidas.
SVG también se puede superponer a otro lenguaje de marcado de interfaz de usuario compatible con XML, como XUL y XForms , como la parte rica en gráficos de una interfaz de usuario.
TUIX
TUIX es un lenguaje de marcado basado en XML para definir interfaces de usuario en Tribiq CMS. Los desarrolladores pueden definir tanto la apariencia de las interfaces como sus interacciones. Los archivos TUIX de diferentes complementos se fusionan antes de renderizar, lo que facilita la modificación de las interfaces existentes y la adición de nuevas funciones.
XAML
XAML es un sistema de marcado que subyace a los componentes de la interfaz de usuario de .NET Framework 3.0 de Microsoft y versiones posteriores. Su alcance es más ambicioso que el de la mayoría de los lenguajes de marcado de la interfaz de usuario, ya que la lógica y los estilos del programa también están incrustados en el documento XAML . Funcionalmente, puede verse como una combinación de XUL, SVG, CSS y JavaScript en un solo esquema XML.
Algunas personas son críticas con este diseño, ya que existen muchos estándares (como los ya enumerados) para hacer estas cosas. Sin embargo, se espera que se desarrolle con una herramienta visual en la que los desarrolladores ni siquiera necesiten comprender las marcas subyacentes.
I3ML
I3ML es un mecanismo de entrega de aplicaciones de cliente ligero patentado desarrollado por CoKinetic Systems Corp , con soporte de cliente proporcionado por un complemento de navegador que procesará aplicaciones similares a las de Windows a través de una infraestructura HTTP con necesidades mínimas de ancho de banda.
OpenLaszlo (LZX)
OpenLaszlo es un entorno de ejecución que comprende un entorno de ejecución y un lenguaje de definición de interfaz (Laszlo XML - LZX). LZX es un lenguaje de interfaz de usuario declarativo que define los widgets, el diseño de la aplicación y los elementos de scripting (usando JavaScript) para crear su aplicación. LZX es independiente del tiempo de ejecución y el tiempo de ejecución admitido actualmente se encuentra dentro de Macromedia / Adobe Flash. Un tiempo de ejecución experimental llamado Laszlo "Legals" que permitirá que las aplicaciones OpenLaszlo (LZX) se ejecuten en múltiples entornos de tiempo de ejecución, como DHTML / AJAX.
HMVCUL
H ierarchical M Odel V IEW C ontroller U Ser I nterface L anguage ( HMVCUL ) es un lenguaje de interfaz de usuario de marcado XML que soporta la creación y el encadenamiento de MVC atómica tríada componentes utilizados en la construcción de aplicaciones HMVC GUI. El tiempo de ejecución asociado proporciona métodos que permiten la configuración de propiedades, enlace de datos y eventos de cada uno de los elementos de la tríada MVC (widget, controlador, modelo). El tiempo de ejecución logra esto mediante la asignación de elementos XML definidos en un archivo HMVCUL a objetos dentro del marco, atributos a propiedades o eventos. El encadenamiento se logra siguiendo la estructura de árbol descrita dentro del archivo HMVCUL.
WasabiXML
WasabiXML es un lenguaje de marcado XML que se utiliza para definir la interfaz gráfica en aplicaciones impulsadas por Wasabi . Se utiliza más comúnmente con Winamp para hacer Winamp pieles . WasabiXML había sido desarrollado por Nullsoft para Winamp, pero también se puede utilizar con otras aplicaciones con Wasabi SDK .
El elemento raíz en WasabiXML es
(para las pieles de Winamp, también lo es
). El
elemento muestra la información de una máscara. La interfaz gráfica está en manos del
elemento y el elemento GUI visualizable básico es
. A continuación se muestra un ejemplo de una GUI simple con un elemento de botón:
xml version = "1.0" encoding = "UTF-8" standalone = "yes"?> version = "1.2" > 1 mySkin < comentario> Ooo Lala Alguna persona [email protected] http://www.example.org < include file = "xml / color-sys.xml" /> id = "normal" > id = "normal" desktopalpha = "true" > x = " 0 " y = " 0 " id = " button.normal " image = " mybutton.image " hoverimage = " mybutton.himage " downimage = " mybutton.dimage " />
WasabiXML admite muchos elementos GUI, incluidos:
utilizado junto con
permite al desarrollador definir un grupo de objetos GUI que se pueden reutilizar en cualquier parte del skin. Wasabi también es compatible con XUI, que no son más que
un script MAKI que permite a los desarrolladores crear componentes GUI (widgets) propios para agregar modularidad.
WasabiXML tiene un espacio de nombres XML 'Wasabi ::' que define GUI comunes sin tener la necesidad de declarar sus rutas de imagen.
MARIA
MARIA es un lenguaje universal, declarativo , de múltiples niveles de abstracción , basado en XML para modelar aplicaciones interactivas en entornos ubicuos .
FXML
FXML es un lenguaje basado en XML para definir la interfaz de usuario de las aplicaciones JavaFX .
Otro
Otros lenguajes de marcado incorporados en marcos existentes son:
- VTML para Macromedia HomeSite
Formato .xib de Interface Builder de Apple
Algunos de estos se compilan en formas binarias.
En aviónica , el estándar ARINC 661 prescribe un formato binario para definir interfaces de usuario en cabinas de vidrio .
Los formularios Borland VCL (.dfm y .lfm) son archivos de texto que describen las ventanas de las aplicaciones Delphi y Lazarus . Se compilan en el ejecutable final en formato binario y utilizan RTTI para funcionar.
Ver también
- Modelado de interfaz de usuario
- Motor de diseño
- Kit de herramientas de widgets
- Lista de lenguajes de marcado de la interfaz de usuario
- Comparación de los lenguajes de marcado de la interfaz de usuario
- Idioma de descripción de la interfaz