ressources pour réaliser des interfaces à vos programmes
Nous vous proposons ici deux bibliothèques de fonctions qui vous permettront d'ajouter des interfaces à vos projets de programmation.
Elles ont été sélectionnées pour leur portabilité, leur relative facilité d'utilisation, le fait qu'elle soient utilisables en C et enfin, pour leur license libre.
Il existe d'autres bibliothèques qui correspondent à ces critères. Cependant, il n'est pas nécessaire de vous noyer sous trop de choix ou de vous proposer des solutions dont la pérénité n'est pas assurée.
Si votre projet ne nécessite pas une interface graphique haute en couleurs et riche en images, vous pouvez vous contenter de rester dans le terminal et d'utiliser la bibliothèque ncurses.
Faisant partie du projet GNU, elle est une mise en œuvre de la bibliothèque curses↓ originale.
L'installation va dépendre du système d'exploitation que vous utilisez pour vos projets.
Si vous avez réussi à installer la machine virtuelle Fedora de l'école, ou si vous utilisez un Mac récent (OS X 10+) , alors il n'y a rien à faire, la bibliothèque et tous les à côtés nécessaires au développement sont déjà installés.
Si vous utilisez Windows, alors je peux simplement dire que des expériences fructeuses d'utilisation de (n)curses avec Code::Blocks existent.
Pour démarrer en douceur avec cette bibliothèque, je vous propose une petit programme, ou plutôt un squelette de programme, qui permet de se faire une idée générale du modèle de programmation. Il contient de nombreux commentaires expliquant les instructions clés.
Bien entendu, vous pouvez vous reporter aux pages de manuel, très complètes, des fonctions de cette bibliothèque.
Si votre projet demande des graphiques avancés, du son, l'utilisation d'images, de textures, de polices de caractères personnalisées, alors la bibliothèque SDL est tout à fait adaptée. Nous nous intéresserons à sa version 2.
Cette bibliothèque a été pensée pour la réalisation de jeux vidéo multiplateformes et en ce sens, peut être utilisée de la même manière sous Windows, OS X ou Linux.
Il y a peu de chance que la bibliothèque SDL soit déjà installée si vous utilisez l'image Fedora de l'école, un Mac ou un Windows. Il faudra donc se rendre sur le site officiel www.libsdl.org et suivre les instructions pour votre système.
Si vous avez installé votre propre Linux, votre gestionnaire de paquets devrait pouvoir vous aider.
Enfin, sous Windows, il y a une forte affinité entre la bibliothèque SDL et l'environnement de développement Code::Blocks. Vous pourrez donc installer ce dernier, avec le compilateur et la bibliothèque SDL, pour commencer à développer dans de bonnes conditions.
Il est à noter que des bibliothèques auxiliaires seront nécessaires en fonction de ce que vous désirez réaliser. Dans l'exemple de code donné ci-dessus, il est nécessaire que la bibliothèque SDL_image soit également installée.
Vous trouverez différentes bibliothèques liées à la SDL dans la section projets du site officiel.
Là encore, pour démarrer en douceur, je vous propose un squelette de programme, largement commenté, dans lequel vous trouverez le minimum pour ouvrir une fenêtre et y afficher des pixels colorés.
De la même manière que ce qui est disponible pour curses, il y a des pages de manuel disponibles pour cette bibliothèque. Il existe également une référence en ligne des différentes fonctions, mais tout est maintenu au travers d'un wiki et de nombreuses lacunes persistent.
L'apprentissage se fera le plus souvent au travers de tutoriels. Je vous invite à les lire avec le recul nécessaire pour que vous en reteniez les principes généraux et non simplement la réponse à une question particulière.