Rust ajoute de la fraîcheur dans le monde des langages compilés (et ça fait du bien !) ! Les langages compilés historiques (le C / C++) sont des langages qui fonctionnent très bien, mais qui ont une approche plutôt complexe et quelque peu vieillissante par rapport à ce qu'il se fait de nos jours.
Rust quant à lui, apporte une touche de modernité, tout en ayant des performances irréprochables ! Plus récent que les autres langages compilés, l'écosystème du Rust se construit petit à petit dans les différents domaines d'activités avec notamment la création et l'évolution de différents frameworks (Rocket, Actix, Axum), ORMs (Diesel, sqlX) et une explosion de la communauté depuis ces dernières années.
Si vous vous demandez si Rust est un langage de confiance, sachez que le noyau Linux a récemment intégré un driver développé en Rust… on peut donc considérer que Rust n'est pas près de s'éteindre :)
On conseille d'utiliser Rust principalement pour le développement :
Très bon compromis entre la performance des langages compilés et leur complexité, Rust peut être un bon choix de technologie dès que vous avez un besoin fort en performance et/ou de gestion de consommation des ressources !
C'est pourquoi il s'est déjà fait une très belle place dans le monde de l'embarqué, et qu'il gagne peu à peu du terrain dans le monde des applications web/APIUne API est un programme permettant à deux applications distinctes de communiquer entre elles et d’échanger des données.. Et ça s'explique par son principal avantage : Rust s'occupe de la gestion de la mémoire à votre place… ou presque !
Pour comprendre pourquoi Rust révolutionne la manière de développer, intéressons-nous à la gestion de la mémoire. La gestion de la mémoire est essentielle dans les projets de développement, puisque c'est ça qui conditionne en grande partie les performances des applications !
Dans le développement, on a 2 grands choix :
Rust a pour objectif de faire ni l'un ni l'autre ! Lors du développement, Rust impose tout simplement une rigueur au développeur qui va permettre au Rust de gérer la mémoire de manière optimisée, sans passer par un garbage collector.
Cette rigueur que Rust impose ajoute une nouvelle dimension au développement car il ajoute un concept d'ownership de "variable", qui consiste à préciser à qui appartient une variable (à quelle fonction globalement). C'est grâce à ce mécanisme que Rust est par la suite capable de gérer la mémoire tout seul, sans passer par un Garbage collector.
Vous l'aurez compris, Rust est le langage qui peut révolutionner la manière de développer de votre équipe, mais comme toujours, tout n'est pas parfait. En effet, cette nouvelle façon de développer vous permet de vous affranchir de la gestion de la mémoire et de bénéficier de très bonnes performances mais ce nouveau paradigme a un grand défaut : il rend le développement d'applications en Rust (et donc sa maintenance) plus difficile.
Le développement Rust, c'est une autre façon de réfléchir le code, et on peut facilement rencontrer des restrictions liées à ce modèle. Certes, c'est toujours plus simple que de devoir gérer sa mémoire à la main, cependant, ça reste malgré tout compliqué pour un développeur lambda.
Avant de vous lancer dans un projet Rust, 2 conseils :
Depuis Lyon, nos équipes de développement Rust peuvent vous accompagner dans vos projets nécessitant un fort enjeu de performances et de gestion de consommation :
Vous avez un projet Rust ou vous vous posez des questions sur le choix de cette technologie ? Contactez-nous pour en discuter !
Une application offrant des performances médiocres peut ralentir la productivité des collaborateurs et entrainer frustrations et stress jusqu’au rejet total de l’application par les utilisateurs. Un projet informatique est réussi uniquement lorsque l’appl
En SQL, lorsqu’une requête possède une condition sur une colonne sur laquelle porte une clause GROUP BY, cette condition n’est pas exprimée dans la clause WHERE mais dans la clause HAVING.
Quand vous faites des appels d'offres ou des contrats de maintenance applicative, vous devez réfléchir aux délais d'intervention en cas de problème sur votre application : SLA Informatique ! Qu'est-ce qu'une SLA ? Pourquoi en inclure dans ses contrats de maintenance applicative et comment les rédiger ? Les réponses ci-dessous !