Liste de bibliothèques d'interface utilisateur
# Liste de bibliothèques d'interface utilisateur

Les bibliothèques de création d'interfaces utilisateurs sont extrêmement dépendantes de la plateforme sur laquelle l'application est construite.

## Système d'exploitation

### Multiplate-forme

* wxWidgets supporte plusieurs langages de programmation, et est notamment utilisé par FileZilla et Audacity.
* GTK+, est notamment utilisée par les environnements de bureau libres GNOME et XFCE. Elle dispose de déclinaisons pour d'autres plateformes telles que GTK# pour le framework .Net, ou bien des bindings pour Java.
* Qt, est notamment utilisée par l'environnement de bureau libre KDE.
* Tk, est très souvent associé avec le langage de programmation Tcl, même s'il n'est pas limité à ce dernier.
* FLTK dont la caractéristique principale est d'être très légère.
* Nana C++ est une bibliothèque C++ compatible avec le standard C++11, disponible sous Windows et Linux (X11)
* NanoGUI est une bibliothèque C++, compatible avec le standard C++11, utilisant OpenGL.

### Microsoft Windows

* MFC

### Mac OS et Mac OS X

* Aqua

### Unix, BSD et Linux

Ces plateformes reposent généralement sur le standard X Window System pour la gestion des interfaces utilisateur (Linux ainsi que d'autres systèmes disposent aussi du (en) framebuffer). En plus des interfaces utilisateur multi-plateformes décrites ci-dessus, on peut ajouter les bibliothèques suivantes :

* Motif et LessTif
* ETK (Enlightenment Toolkit), la bibliothèque d'interface utilisateur utilisée par l'environnement de bureau libre Enlightenment

## Machine virtuelle

### Plate-forme Java

* AWT, partie intégrante de l'API Java SE.
* Swing, successeur de AWT, partie intégrante de l'API Java SE.
* Standard Widget Toolkit (SWT), utilisée dans l'environnement de développement intégré Eclipse.
* JavaFX, successeur de Swing

### Framework .NET

* Windows Forms
* GTK#, adaptation de GTK+ pour le framework .Net.
* XAML, langage XML utilisé dans Microsoft .NET,

### Adobe Flash

La plateforme Flash d'Adobe dispose de bibliothèques pour réaliser des interfaces utilisateurs. En effet, l'utilisation de multiples panneaux Bibliothèque dans Adobe Flash permet d'optimiser le partage d'éléments d'un fichier à l'autre.

## Web

Dans cette section, les exemples ne sont pas à proprement parler des bibliothèques d'interface utilisateur, mais des langages de description d'interface graphique ou utilisateur. La plateforme d'exécution de ces langages d'interface graphique sont les navigateurs webs.

* HTML / XHTML + CSS.
* XForms et Web Forms, proposés par le W3C,
* XUL, langage XML de description d'interface utilisateur créé dans le cadre du projet Mozilla et utilisé par Mozilla Firefox.

## Aussi

Autres langages de description d'interface utilisateur basés sur XML:

* UIML et UsiXML
* MXML, développé par Adobe Systems pour la technologie Flash,
* NXML, développé par Nexaweb
