Développement Slint
Slint est une approche relativement nouvelle du développement d’interfaces utilisateur. Ce toolkit GUI déclaratif, lancé par un groupe d’anciens membres de l’équipe Qt avec pour objectif de proposer un environnement de conception d’interfaces léger, évolutif, intuitif et natif, a gagné des parts de marché à mesure que les développeurs adoptent cette alternative à Qt.
QU’EST-CE QUE LE DÉVELOPPEMENT AVEC SLINT ?
Slint est un toolkit GUI déclaratif conçu pour développer une interface graphique pour une application avec logique backend. Conçu pour permettre la séparation entre la couche interface utilisateur et la logique métier, il inclut la capacité de construction en temps réel (Live Preview), la création d’interfaces utilisateur natives et réactives, ainsi que la prise en charge de plusieurs langages de programmation (Rust, C++, JavaScript, entre autres). Les fichiers Slint sont compilés en code natif. Il s’agit d’une option légère, moderne et performante pour la conception d’interfaces utilisateur, compilée en code machine et déployable sur une large gamme de MPUs et de MCUs.
Les principaux défis du développement avec Slint

Programmation fonctionnelle peu familière
Le langage de balisage de Slint repose sur Rust, et adopte donc une approche de programmation fonctionnelle. Bien que ce paradigme ne soit pas nouveau, il reste souvent méconnu de nombreux développeurs. Vos équipes internes peuvent ne pas disposer des compétences, de l’expérience ou de l’expertise nécessaires pour développer et concevoir efficacement des interfaces utilisateur natives selon une approche fonctionnelle.

Nouvelle approche de l’interface utilisateur
La programmation fonctionnelle n’est peut-être pas nouvelle, mais Slint marque une nouvelle ère. Lancé relativement récemment, Slint s’inspire à la fois de Qt et de QML, tout en les remplaçant. Les équipes n’ayant développé que sous Qt ou avec d’autres frameworks d’interface ou front-end devront faire face à une courbe d’apprentissage abrupte pour créer une interface utilisateur Slint native à partir de zéro.

Réduction des ressources
Développer une interface utilisateur pour un appareil disposant de peu de ressources est un défi, même dans les meilleures conditions. Slint facilite cette tâche, car il est suffisamment léger pour fonctionner aussi bien sur des MPUs que sur des MCUs, et conçu pour fonctionner avec des ressources limitées et une consommation minimale. Pour les développeurs familiers avec Slint, les contraintes de ressources ne posent aucun problème, mais cela peut représenter un véritable défi pour ceux qui sont habitués à travailler sur des systèmes plus puissants.
Éléments clés à prendre en compte
Architecturer le projet
- Évaluer les fonctionnalités et les besoins
- Choisir le langage backend
- Tarification et modèle économique
Concevoir l’interface utilisateur
- Développer l’interface utilisateur
- Tester et valider
- Documentation et transfert
Industrialisation
- Séparer l’interface utilisateur de la logique métier
- Maintenance
- Flexibilité continue

Ismail Tounsi
Product Line Manager
Travailler avec Witekio a été déterminant dans la modernisation de nos solutions pour bâtiments commerciaux. Leur capacité à comprendre nos besoins, combinée à une approche collaborative, a permis de livrer un produit à la fois convivial et extrêmement performant. Ce projet a non seulement modernisé notre offre, mais nous a également permis de nous positionner solidement sur le marché.
COMMENT DÉVELOPPER AVEC LE TOOLKIT GUI DÉCLARATIF SLINT
Architecturer le projet
Tout projet de développement avec Slint commence par une étude des besoins de l’interface utilisateur, ainsi qu’une analyse de la manière dont les utilisateurs finaux interagiront avec le produit une fois sur le marché. Les développeurs GUI échangent avec les équipes internes pour évaluer les fonctionnalités et les attentes, afin que l’interface développée y réponde pleinement. Boutons, appels à l’action, animations, images et attention portée au parcours utilisateur constituent la base de l’interface à concevoir.
Ensuite, si une application backend n’existe pas encore, le client devra choisir un langage backend — généralement JavaScript, Rust ou C++. Slint se distingue en ce que ce choix a peu d’impact sur la conception et le développement de l’interface en termes de fonctionnalités. Toutefois, comprendre comment la logique métier, écrite dans des fichiers Slint en langage spécifique au domaine, est compilée en code natif en Rust, C++ ou JavaScript, aide les développeurs à réaliser les meilleures intégrations.
Enfin, les équipes commerciales travaillent avec le client sur une tarification et un modèle économique, car Slint, comme d’autres approches commerciales, implique un coût financier. Grâce à une expertise de longue date sur des modèles similaires et à de nombreux cas concrets, les équipes de Witekio peuvent conseiller et accompagner vos équipes dans le choix de la licence la mieux adaptée à vos objectifs business.
Développer l’interface utilisateur
Une fois le plan du projet architecturé et en place, le développement de l’interface utilisateur avec le toolkit Slint peut commencer. Les ingénieurs logiciels et les designers travaillent ensemble pour construire l’interface et s’assurer qu’elle soit attrayante, utilisable et conforme aux attentes de vos équipes et des utilisateurs finaux.
Un soin particulier est apporté pour garantir que l’interface utilisateur fonctionne dans des situations réelles, qui peuvent être très différentes des attentes initiales. L’ensemble du logiciel est soumis à des tests et validations approfondis afin de s’assurer que le livrable soit sans bug, sans crash, et fonctionne parfaitement en synchronisation avec l’application backend existante.
Des tests automatisés et manuels ainsi que des exercices de validation de code sont menés jusqu’à ce que les équipes de développement et de design valident l’interface finale. L’interface utilisateur Slint est ensuite entièrement documentée pour que les équipes internes comprennent pourquoi et comment elle fonctionne, et pour que ses connexions avec le backend soient bien identifiées, afin que toute modification ultérieure de la logique métier écrite en langage Slint puisse également être intégrée dans l’interface.
Enfin, le code et la documentation sont remis au client lors du transfert. Les équipes internes reçoivent tout ce dont elles ont besoin pour prendre en main l’interface utilisateur écrite en Slint, et les développeurs de Witekio restent disponibles pour répondre à toutes les questions restantes en matière de support.
Industrialiser
Les produits et dispositifs évoluent constamment, et les fournisseurs de dispositifs performants ne restent que rarement immobiles dans des marchés en évolution rapide tels que ceux des objets connectés, des robots et des dispositifs embarqués. Avec Slint, il est possible de séparer entièrement l’interface utilisateur de la logique métier, ce qui signifie que des modifications peuvent être apportées soit à la partie front-end, soit à la partie back-end sans nécessairement impacter l’autre.
En tant que solution multiplateforme, une interface utilisateur Slint peut également être facilement transférée vers un nouvel appareil ou projet, afin de maintenir une expérience utilisateur cohérente sans dépendre du même back-end. La maintenance est aussi une considération essentielle. Si certains clients comptent sur leurs équipes internes et sur la documentation complète de Witekio pour maintenir leur interface Slint, beaucoup reviennent vers les équipes de Witekio pour garder leurs dispositifs sûrs, sécurisés, et avec une réputation de qualité.
Enfin, les clients qui ont choisi de construire leur interface utilisateur avec Slint bénéficient d’une flexibilité continue que seule une application native peut offrir, ainsi que du support nécessaire pour mettre à jour cette interface utilisateur afin de répondre aux besoins des clients ou à l’évolution des attentes du marché. Les ingénieurs peuvent mettre à jour rapidement et facilement l’interface utilisateur, l’exporter vers un nouvel appareil, et tirer pleinement parti de l’agilité de Slint.
Les principaux avantages du développement avec Slint
Backend flexible
Slint offre de la flexibilité aux responsables produit et aux développeurs lorsqu’il s’agit de construire l’application backend d’un projet ou d’un produit. Si C++ convient mieux à un appareil donné, il n’y a aucun problème à utiliser Slint pour l’interface front-end. À l’inverse, si l’application est codée en Rust, Slint fonctionne tout aussi bien pour rendre l’interaction avec l’appareil fluide et intuitive. La flexibilité que propose Slint permet aux responsables produit et aux fabricants de dispositifs de développer en toute confiance, en sachant qu’ils ne seront jamais limités par le choix du langage de l’interface utilisateur dans le processus de développement.
Construction de l’interface en temps réel
Les développeurs utilisant Slint ont une vue en temps réel de l’interface utilisateur au fur et à mesure de sa construction. Plutôt que de devoir compiler le code et attendre l’affichage de l’interface, Slint permet aux développeurs de voir ce qu’ils construisent en écrivant le code. Les fichiers Slint sont compilés à l’avance (ahead-of-time), ce qui permet au compilateur d’optimiser les fonctions pures. Cela peut entraîner des améliorations telles qu’un meilleur temps de rendu sur les appareils bas de gamme. Cette capacité permet des modifications rapides, des boucles de rétroaction courtes, et la possibilité d’intégrer en direct les changements demandés par les clients. Les développeurs peuvent utiliser la fonction Live Preview de Slint pour ajuster instantanément les couleurs, les formes, le texte, les animations et les mises en page réactives, ce qui accélère le développement et crée de la valeur pour les responsables produit.
Réutilisation du code UI
Slint ne permet pas seulement de créer d’excellentes interfaces utilisateur, il est également suffisamment léger pour être utilisé sur différents matériels sans difficulté. Par exemple, en plus de fonctionner parfaitement sur des microprocesseurs, Slint peut aussi être déployé sur des microcontrôleurs. Cela offre une grande flexibilité aux fabricants d’appareils, qui peuvent utiliser la même interface utilisateur pour des produits ayant des ressources et des composants matériels différents. Réutiliser la même base de code UI Slint sur plusieurs appareils permet d’économiser des ressources et d’accélérer le développement pour une mise sur le marché plus rapide.
Witekio peut vous accompagner dans votre développement Slint
Slint est une approche relativement nouvelle de la conception d’interfaces utilisateur, mais elle offre des avantages significatifs par rapport aux approches existantes et aux autres toolkits GUI. Bien que récent et en développement actif, les ingénieurs de Witekio ont déjà acquis de l’expérience en travaillant avec Slint et en livrant des projets fonctionnant avec des backends écrits en Rust, C++ et JavaScript.
Travailler avec nos équipes, c’est tirer parti de notre expertise et de notre accompagnement en conception d’interfaces utilisateur, acquis au cours de plusieurs décennies d’expérience dans une grande variété de secteurs — quelle que soit la plateforme : desktop, mobile, web ou système embarqué.
Qu’il s’agisse d’un projet logiciel plus large avec des composants front-end et back-end, ou simplement d’une refonte de l’interface utilisateur d’un produit existant, Slint et Witekio forment un duo puissant.
Les ingénieurs de Witekio sont des experts des dispositifs embarqués et du développement d’applications web utilisant des langages comme Rust, C++, JavaScript et d’autres encore.
Contactez-nous pour plus d’informations sur le développement avec Slint, les applications Slint et le support de votre projet.
Notre expertise en applications embarquées

Votre partenaire de confiance en logiciel embarqué, applications et connectivité
4 Pays
4 Pays
Certifies ISO 27001
Certifies ISO 27001
