Les technologies derrière PianoMaster
PianoMaster repose sur une architecture technique simple et cohérente avec son usage : une application de bureau personnelle, pensée pour tourner sur un seul poste, sans dépendance à un serveur distant.
Electron pour une application de bureau multiplateforme
Le logiciel est construit avec Electron, un framework qui permet de créer des applications de bureau à partir de technologies web. Ce choix permet à Jessy Piacentini de bénéficier d'une interface utilisateur riche, proche de ce que proposerait une application native, tout en s'appuyant sur des compétences web déjà maîtrisées.
JavaScript comme langage principal
La logique de l'application — gestion des modes de jeu, détection des notes, boucle intelligente, métronome — est écrite en JavaScript. C'est également ce langage qui pilote l'interface du clavier virtuel, qu'il soit utilisé à la souris ou depuis un clavier d'ordinateur en disposition AZERTY.
SQLite pour le stockage local
Les données de l'application — bibliothèque musicale, statistiques de progression, paramètres de thèmes — sont stockées localement grâce à SQLite, une base de données légère qui ne nécessite aucun serveur dédié. Ce choix correspond à la philosophie du projet : un logiciel personnel, autonome, qui fonctionne entièrement sur la machine de l'utilisateur.
Une architecture encore amenée à évoluer
La connexion à un clavier MIDI physique, non encore testée, impliquerait l'intégration d'une couche supplémentaire de communication avec le matériel audio. Cette évolution technique fait partie des pistes envisagées pour les prochaines versions, sans calendrier annoncé à ce stade.
Cette approche technologique rejoint la méthode plus générale de Jessy Piacentini en matière de développement logiciel : des outils choisis pour leur adéquation au problème posé, plutôt que pour suivre une tendance.
Pourquoi SQLite plutôt qu'une base de données serveur
Pour un logiciel destiné à tourner sur un seul poste, sans utilisateurs multiples ni accès distant, une base de données serveur aurait représenté une complexité inutile. SQLite stocke l'ensemble des données dans un fichier unique, ce qui simplifie à la fois l'installation, la sauvegarde et la portabilité du logiciel d'un ordinateur à l'autre.
Un code pensé pour rester lisible dans le temps
Comme pour ses autres projets, Jessy Piacentini accorde une importance particulière à la lisibilité du code de PianoMaster, afin de pouvoir reprendre son développement après une pause sans devoir tout redécouvrir. Cette discipline rejoint les principes d'organisation détaillés sur la page consacrée à l'architecture de ses projets informatiques.
