Bonjour à tous,
À propos de moi
Je m’appelle Erwan. J’ai 22 ans, je suis étudiant en Droit et passionné d’informatique, notamment de programmation depuis plusieurs années. Mon langage de programmation principal est le C++. J’ai découvert ce langage via un cour du Site du Zéro il y a quelques années. J’ai depuis suivi pas mal de cours sur le C++, mais j’ai fait une erreur qui m’a fait perdre du temps. Je n’ai jamais mis mes connaissances en pratique.
Origine du projet
La raison à l’origine de ce projet est que je voulais trouver un moyen simple de pouvoir trier mes listes de souhaits de jeux, mais aussi de films, de séries et même de livres. Initialement, je les écrivais dans un bloc note, ça me permettait de faire des comparaisons et ainsi de pouvoir me concentrer sur ce qui m’intéressait le plus. Cependant, ce n’est pas très pratique, en particulier quand on se retrouve avec une liste importante d’éléments. C’est suite à cela que je me suis lancé dans le développement de ce programme pour m’aider à faire mes listes de souhaits. Bien sûr, c’est aussi pour pouvoir mettre en application mes connaissances dans un projet abordable.
Présentation du projet
Game Sorting est un petit programme qui permet de faire une liste de souhaits. Le programme est tourné principalement vers le jeu, mais il peut être utilisé pour d’autres raisons. Il fonctionne sur Windows et Linux, je ne peux cependant pas tester s’il fonctionne sur Mac.
Le programme est constitué d’onglets et dans chaque onglet, il y a un tableau à trois colonnes. Chaque onglet peut être déplacé, renommé et fermé. Il est possible bien sûr d’ouvrir de nouveaux onglets.
Le tableau est constitué de trois colonnes nommées Game name, Game type et Game rate. Les colonnes Game name et Game type sont composées d’un champ de texte éditable et la colonne Game rate est constituée d’étoiles. Il peut y avoir entre une à cinq étoiles aussi éditables. Chaque tableau peut être trié ou filtré par type (mais pas les deux en même temps). Pour que le filtrage se fasse correctement, il faut que les différentes catégories d’un jeu soient séparées par une virgule. Il est possible d’ajouter des lignes (pour insérer un nouveau jeu) et de les supprimer. Les lignes peuvent être déplacées pour être réarrangées et même être déplacées d’un onglet à l’autre.
La liste peut ensuite être sauvegardée dans un fichier.
Futur du projet
Le programme a atteint un stade où il est fonctionnel, mais il n’est pas terminé. Il y a certaines fonctionnalités que j’aimerais rajouter dans le futur, notamment une qui m’a l’air intéressante. Il est possible d’ouvrir plusieurs instances du programme. Le problème c’est qu’il s’agit de plusieurs applications différentes et j’aimerais que toutes ces fenêtres ouvertes ne soient qu’une seule application.
Si vous avez des idées pour améliorer le programme, je serais intéressé d’en discuter.
Outils utilisés
Le programme est développé exclusivement en C++ 11. J’ai utilisé Qt 5 pour faire l’interface graphique (Qt Widgets), le chargement et la sauvegarde des fichiers (Qt Core). J’ai aussi utilisé Visual Studio Community 2019 comme IDE et CMake pour la configuration du projet.
Installation
Le code source du programme est disponible sur Github, vous pouvez aussi télécharger les binaires pour Windows 64 bits dans la section releases.
Pour ceux qui sont intéressés pour regarder l’avancée du programme en remontant dans les commits, je suis désolé de dire que j’ai totalement oublié d’utiliser Git lors du développement, je n’ai commencé à l’utiliser que très tard.
J’espère que le programme vous intéressera.
Je vous souhaite une bonne journée.
Erwan.