XAML

Un article de Wikipédia, l'encyclopédie libre.

XAML est un langage déclaratif développé pour les besoins du nouveau système d'exploitation de Microsoft, Windows Vista. Prononcé Zammel, ces initiales correspondent à eXtensible Application Markup Language.

Les interfaces utilisateur des futures applications développées pour Windows Vista (il y aura une mise à jour pour Windows XP un peu avant la sortie de Vista) seront créées avec XAML. XAML fait partie de Windows Presentation Foundation qui est lui-même un composant du framework .Net 3.0.

Basé sur le langage XML, il facilite le travail du développeur et permet d'écrire une application client Windows (ou tout au moins, son interface) aussi aisément qu'une application web. L'idée est en effet de séparer la construction de l'interface utilisateur du code sous-jacent comme cela est déjà le cas dans les applications Web de type ASP.NET. Le développement de l'interface utilisateur étant confié à des designers, Microsoft propose à ceux-ci le logiciel Expression Interactive Designer pour manipuler cette interface. XAML inclut également des fonctionnalités pour manipuler des objets en trois dimensions, de manière analogue à X3D.

XUL et UIML sont d'autres exemples de langages de description d'interfaces graphiques basés sur le XML.

Sommaire

[modifier] Transaction Authority

XAML est également une spécification de développement pour des services web qui tire son nom du protocole XA (Transaction Authority) qui a donné Transaction Authority Markup Language.

Les spécifications XAML permettent en effet à une transaction web de gérer l'intégrité transactionnelle (ce qui faisait défaut jusqu'ici aux développements B2B). Avec XAML il devient possible de gérer le two-phase commit qui permet la mise à jour contrôlée de plusieurs bases de données réparties (par exemple entre plusieurs partenaires).

La transaction XAML « attend » de recevoir l'acquittement (le commit) des différents serveurs sollicités et en cas de problème avec l'un d'eux, est en mesure de demander aux autres serveurs de « défaire » les mises à jour partielles effectuées afin de maintenir l'intégrité des données.

[modifier] Exemple

Voici un exemple de code d'une petite application Windows qui affiche « Hello World! » :

<Canvas ID="root" xmlns="http://schemas.microsoft.com/2003/xaml" xmlns:def="Definition">
 <Text>Hello World!</Text>
</Canvas>

Comme dans le développement Web, du code permettant de gérer des évènements (clic, double-clic, entrée de texte, etc.) peut être inséré :

  • soit directement dans la page à l'aide d'un tag spécial def:Code,
  • soit dans un fichier séparé écrit dans un langage supporté par l'environnement.

Le code peut être écrit en C# ou Visual Basic .NET. Une des caractéristiques les plus appréciées du développement en XAML, présente en fait depuis l'arrivée de .NET, est justement de pouvoir séparer cette partie visible par l'utilisateur (environnement graphique) du code en lui-même. Le fichier séparé est alors appelé code-behind file.

[modifier] Voir aussi

[modifier] Liens externes