Nana (bibliothèque)
# Nana (bibliothèque)

Nana est une bibliothèque logicielle C++ multiplate-forme pour créer des interfaces graphiques. Elle utilise une Interface de programmation indépendante de la plateforme et fonctionne actuellement avec Windows et Linux (X11).

Nana est un logiciel gratuit à code source ouvert utilisable selon les termes de la licence logicielle Boost.

## Conception et architecture

Nana met en œuvre une boite à outils de composants d'interface graphique selon une conception à la fois orientée objet et de programmation générique. Elle respecte entièrement le standard de C++ et peut donc être en principe compilée avec n'importe quel compilateur répondant au standard ISO (par exemple, VC2013, GCC/MinGW, Clang).

L'objectif principal de la conception de Nana est de rendre le développement d'interfaces graphiques simple et intuitif pour les développeurs C++. Elle utilise pour cela beaucoup d'éléments de langage C++ avancés, tels que les templates, la librairie standard, les exceptions et la détermination dynamique des types à l'exécution. La librairie est entièrement conforme à C++11 depuis 2012, laissant ainsi aux développeurs la liberté d'utiliser les éléments de style dits C++ moderne, tels que les fonctions lambda, les pointeurs intelligents, et les évolutions de la librairie standard.

## Interface avec le langage

Nana est écrit en C++ et cible uniquement ce langage.

L'exemple suivant crée une fenêtre avec pour titre Bonjour tout le monde et un bouton Quitter :

## Versions

Selon les pages du projet sur SourceForge.net :

* en 2015, 10 versions 1.x.x ont été publiées ;
* entre le milieu de 2013 et le début de 2015, 24 versions 0.x.x ont été publiées.

Les pages de la préversion du projet sur SourceForge.net font remonter la première version 0.1.0 au 4 décembre 2007.

