Saltar la navegación

2.2.- XUL.

Es un lenguaje de marcas basado en XML para definir interfaces de usuario complejas, en las que podremos insertar los elementos habituales en un formulario, pero que también dispone de otros más complejos, como menús, barras de herramientas, estructuras jerárquicas o teclas de acceso directo. Así mismo, permite colocar los contenidos de la interfaz usando distribuciones complejas.

Este lenguaje se utiliza específicamente para desarrollar aplicaciones en red. Los documentos escritos en este lenguaje podrán visualizarse en los navegadores Mozilla Firefox, de hecho, la interfaz de ambos está desarrollada en XUL. Este navegador funciona sobre el motor de renderizado Gecko, que es la base que necesitamos para visualizar correctamente el contenido de un documento XUL. Gracias a esto, las aplicaciones XUL son multiplataforma y multidispositivo, ya que siempre podremos encontrar un navegador Gecko para la plataforma y dispositivo deseados.

Uno de los principales atractivos de este lenguaje es que ofrece la posibilidad de crear complementos para el navegador Mozilla.
Ilutración en donde se muestra el código XML básico para crear una ventana vacía con el lenguaje XUL.
María José Navascués González (Elaboración propia)

Por contra su principal desventaja es que no se podrá ejecutar en otros navegadores que, como Internet Explorer, no cumplan con esta característica.

Proceso de mapeado: Un documento XUL es interpretado para visualizar su contenido, en la renderización intervienen la definición de los elementos y las hojas de estilo. Es muy parecido a HTML, utiliza hojas de estilo para diseñar el aspecto y Javascript para implementar el comportamiento de sus elementos. Para definir una interfaz se especifican tres grupos de componentes distintos:

  • Content: Aquí se encuentran los documentos XUL, que definen el diseño de la interfaz. Incluye las etiquetas y la referencia a los documentos Javascript.
  • Skin: Contiene las hojas de estilos (CSS) y las imágenes, las cuales definen la apariencia de la interfaz.
  • Locale: Los documentos DTD se encuentran aquí, estos documentos facilitan la localización de páginas XUL.

Cada uno de estos componentes se almacena en un archivo diferente, que puede ser editado.

XUL nos proporciona una gran cantidad de componentes para crear una interfaz gráfica entre las que destacan: 
  • Controles de entrada como TextBox, CheckBox, etc.
  • Barra de herramientas con otro contenido o botones.
  • Menús de barras de diálogos o menús y diálogos emergentes.
  • Árboles, Atajos del teclado.
  • Scripts y eventos.
  • Overlay, elemento creado para Firefox.
Los tipos de aplicaciones XUL son:
  •      Extensiones para Firefox: barras de herramientas, menús u otros documentos XUL que agregan funcionalidades a Firefox.
  •      Aplicaciones independientes: son creadas mediante XULRunner. No es necesario el navegador para ejecutarlas.
  •      Paquete XUL: son aplicaciones que se instalan como extensiones de Firefox, pero actúan como una aplicación independiente de Firefox.
  •      Aplicaciones XUL Remotas: aplicaciones que van a ser instaladas en servidores Web y son ejecutadas de forma remota.

Para saber más

Página oficial de XUL donde poder encontrar la referencia del lenguaje, ejemplos de aplicaciones. Cabe destacar el enlace a la aplicación XULRunner que te permitirá crear y ejecutar aplicaciones XUL.

Página oficial de XUL.

En este enlace, encontrarás un pequeño tutorial, muy sencillo de seguir, para ver cómo funciona una aplicación web muy básica escrita en XUL.

Mi primera aplicación XUL.