Cet article, rédigé à l'aide de l'IA, est issu d’un talk filmé, donné par Julien Le Guen, développeur embarqué, chez KAIZEN Solutions. Il restitue les idées et les échanges partagés lors de cette session dédiée à Rust.
🎧Le replay est disponible juste en bas de l’article
Dans les projets embarqués et critiques, chaque bug peut être une bombe à retardement. Et pourtant, nous continuons d’utiliser, en 2025, les mêmes langages systèmes qui laissent la porte ouverte à des erreurs fondamentales. C, C++ : puissants mais permissifs, performants mais piégeux. Et quand 70 % des bugs critiques en production sont liés à la gestion de la mémoire, une question s’impose : pourquoi s’obstiner à marcher sur une corde raide sans filet ?
Le langage de programmation Rust, lui, propose une autre voie. Un langage conçu pour prévenir les erreurs avant même qu’elles n’atteignent le runtime. Un langage qui refuse de compiler du code incorrect. Un langage qui, dans l’embarqué et le critique, commence doucement mais sûrement à devenir une évidence.
70 % des bugs liés à la mémoire : une réalité difficile à ignorer
Ce chiffre n’est pas une donnée d’un sondage approximatif, mais le fruit d’analyses poussées menées par Google, Apple, Microsoft, Mozilla. Et ça concerne les plus gros systèmes critiques de la planète. La cause ? Des langages historiques, performants mais dangereux.
C et C++ sont encore omniprésents. Et pourtant, les agences gouvernementales (CISA, NSA, NIST, et leurs équivalents européens) commencent à alerter : utiliser des langages non « memory-safe » alors que des alternatives existent est en passe de devenir une non-conformité, même dangereux. La bascule réglementaire approche.
Qu’est-ce qu’un système critique, au juste ?
Au sens implicatif, un système qui peut mettre en danger la vie humaine s’il venait à dysfonctionner. Un implant médical. Une centrale nucléaire. Un barrage. Ces systèmes ne souffrent pas l’erreur : si ça pète, il y a des morts. Développer pour ces systèmes exige rigueur, discipline, outillage, et surtout… des garanties fortes.
Aujourd’hui, ces garanties sont apportées à coup de tests unitaires, d’analyse statique, de V&V, de normes comme MISRA. Et même là, des erreurs passent.
C’est ici que Rust entre en scène.
Rust, ou le compilateur qui refuse de vous laisser planter
Avec Rust, les bugs mémoire ne compilent tout simplement pas. Son système de types, sa gestion de la propriété, ses règles d’emprunt... tout est pensé pour rendre impossible (ou du moins extrêmement difficile) l’émergence de race conditions ou de NULL pointer exceptions.
Et ce n’est pas juste un langage "verrouillé" à la Ada. Rust reste expressif, puissant, modulaire. Et surtout, s’il compile, ça marche. C’est cette philosophie radicale qui séduit de plus en plus de développeurs embarqués.
Des outils pensés pour le critique
Rust ne vient pas seul. Il apporte avec lui une suite d’outils d’une maturité étonnante :
- Cargo pour la compilation, les dépendances, les tests
- Cargo audit pour la vérification des failles connues
- Des tests embarqués dans la documentation
- Des analyses statiques directement intégrées
- Et surtout un compilateur certifié (Ferrocene), validé ISO 26262, IEC 61508 et 62304. Oui, même pour le médical
Une compatibilité pragmatique avec l’existant
Le plus rassurant ? Le langage Rust cohabite avec vos bases de code en C ou C++. On encapsule les zones sensibles dans des blocs « unsafe », on garde ce qui fonctionne, et on écrit le nouveau code en Rust. Cette transition douce est possible, elle est déjà en marche, et elle évite de jeter à la poubelle 20 ans d’investissement.
L’humain : l’autre facteur clé
C’est peut-être l’un des messages les plus forts du talk : ce sont les humains qui développent. Et Rust a été pensé pour eux. Non, ce n’est pas un langage élitiste. Le compilateur prend par la main. Et chez KAIZEN, on l’a vu : un stagiaire, sorti d’école, a développé deux systèmes embarqués complets en cinq mois sur un projet pour enseigner le parapente à des personnes sourdes et malentendantes en mettant en place des systèmes embarqués, des lunettes à vision augmentée, des télécommandes. Et ça fonctionne.
La courbe d’adoption de Rust explose. Google, Microsoft, Toyota, Volvo, STMicroelectronics investissent. Les formations sont ouvertes, les communautés accueillantes et la documentation exemplaire. Rust est voté « Most Loved Language » depuis 10 ans et le plaisir de coder est réel.
Conclusion : Rust, ce n’est plus un pari. C’est une direction
Rust n’est pas là pour remplacer tous les langages. Mais dans l’embarqué et le critique, il a des arguments que les autres n’ont pas : des garanties fortes, une compatibilité avec l’existant, une adoption grandissante, et une capacité à intégrer les normes les plus exigeantes.
Ce n’est pas un langage de niche. C’est une réponse concrète aux défis du présent. Et chez KAIZEN, nous sommes convaincus qu’il mérite toute votre attention — et peut-être même une place centrale dans vos prochains projets.
Envie d’en savoir plus ? Mettez vos écouteurs et plongez dans l’univers de Rust avec Julien Le Guen.
Kaizen Talk vidéo
retour en haut de la page
Retour aux articles