Le studio vert

Communiquer c'est notre nature.

Vous devez mettre à jour votre Player Flash
et activer JavaScript dans votre navigateur pour voir ce site.

Actualités

Notre avis sur...

XUL, ou le client riche par Mozilla

XUL, ou le client riche par Mozilla

XUL qui signifie XML-based User interface Language est un langage basé sur XML (eXtensible Markup Language) permettant de décrire une interface graphique. Il est utilisé dans les logiciels de la fondation Mozilla.


Présentation

XUL (se prononce “zoul”) à été créé par Mozilla afin de faciliter et simplifier le développement de leurs différents logiciels, tels que Firefox ou encore Thunderbird. Ce nom viendrait du dieu dans le film Ghostbusters (SOS Fantômes).

Ce langage permet de créer une interface, simplement en utilisant des balises qui correspondent à des boutons, menus, arbres, etc.

Pour être interprété, il est nécessaire de disposer d’un navigateur à base de moteur Gecko (Firefox, Epiphany, Camino, Flock (voir article)...). Gecko implémente en natif différents langages basés sur XML, et notamment le XUL.
Gecko possède l’avantage d’être multiplateformes ; ce qui donne l’avantage de disposer d’une application facilement portable, que ce soit sur Windows, MacOs, Linux ou toute autre machine Unix.

Mais pourquoi choisir XUL ?

Le XUL permet d’employer des techniques dignes d’applications utilisables sur le poste client. Certaines possibilités deviennent facilement réalisables, alors qu’elles n’étaient pas possible avec une simple page web. On pourra facilement créer une véritable application web comportant par exemple une barre d’outils, des arbres, une barre de chargement, et qui permettra d’utiliser le copier-déplacer, ou encore l’accès aux fichiers...
Il est aussi possible de combiner différentes technologies comme CSS, SVG, XForms, ou encore AJAX (voir article) avec XUL afin de créer une application [encore plus riche et réactive.

Et comment ça marche ?

Pour faire simple, on pourrait dire que XUL est un langage que l’on décomposera en 3 parties :
 le code XUL, qui va permettre de créer des objets graphiques (boutons, menus, arbres...)
 du JavaScript, pour la gestion des évènements (clic de souris, appui sur une touche du clavier...)
 une feuille de style en CSS pour la présentation (ce qui facilite la création de différents thèmes graphiques).
On profitera alors des avantages de la séparation du contenu et du style.

Et concrètement ça donne quoi ?

Le meilleur exemple est certainement le navigateur Firefox, ou tout autre logiciel de la suite Mozilla qui sont écrits totalement en XUL !
On peut cependant remarquer que ce langage est de plus en plus utilisé dans des projets internes avec par exemple :

  • le projet “SEPT” qui est l’outil de gestion de publication de contenus utilisé pour les articles apparaissant sur le site du quotidien Le Monde
  • un projet interne de gestion chez Renault F1 Team
  • un nouvel outil de gestion interne au Studio Vert

Mais aussi dans des projets destinés à tout utilisateur d’Internet comme :

  • Le MAB [1] qui reprend les articles du site d’Amazon (navigateur Gecko obligatoire pour accéder à l’application)
  • SkyMessenger, une messagerie instantanée créée par Skyrock basée sur XUL.
Pour conclure

Comme décrit précédemment, le XUL permet de créer de véritables applications web, beaucoup plus conviviales et ergonomiques que le HTML.
Le développement d’une application en XUL n’est pas forcément un choix judicieux pour le monde de l’Internet car il limite l’utilisation aux seuls possesseurs de navigateurs Gecko. C’est cependant un bon choix pour réaliser des applications internes où l’on pourra imposer l’installation de Firefox.

D’un autre coté, on commence à voir apparaître de plus en plus d’applications autonomes grâce à XULRunner qui permet de se passer de l’installation de Mozilla ou Firefox, car il intègre lui même le moteur et permet de créer des véritables applications légères, et simples à installer.

On peut alors se demander à quand une standardisation de XUL pour le web ??? Ce n’est malheureusement pas prévu, le W3C travaillant sur les XForms en tant que clients riches afin de pouvoir remplacer les formulaires actuels.
Malheureusement tout le monde fait un peu la même chose à sa sauce ; on pourra citer pour exemple Macromedia Flex qui utilise le MXML, avec un principe identique au XUL, un peu comme Microsoft et son XAML qui sera le coeur de son futur OS...

le 16/03/2006


FlickR
Ce site est propulsé par SPIP 1.9.2