Rust
Rust est un langage de programmation qui refuse purement et simplement de construire votre programme s'il contient les erreurs de mémoire à l'origine des failles les plus graves.
Également appelé langage Rust Rust lang langage systeme
Définition
Rust est un langage de programmation pour les logiciels qui n'ont pas le droit de tomber en panne. On le trouve dans les systèmes d'exploitation, les moteurs de navigateurs et les petites briques qui tournent sous tout le reste pendant des années sans que personne y touche. Il est rapide, et sévère d'une façon qui surprend ceux qui viennent d'autres langages, et cette sévérité est le but.
Pour comprendre pourquoi, il suffit d'une idée sur le fonctionnement d'un ordinateur : un programme demande de la mémoire, s'en sert, puis la rend. Les ennuis commencent quand il continue d'utiliser un morceau déjà rendu, ou qu'il écrit au-delà de l'espace donné. Ces deux erreurs sont à l'origine de la plupart des failles graves de ce type de logiciel, et ce n'est pas une impression. Microsoft et Google ont compté les bugs de leur propre code et sont arrivés au même chiffre, près de sept sur dix.
La réponse de Rust est rare, car il n'attrape pas l'erreur pendant que le programme tourne. Il refuse tout simplement de le construire. Le compilateur suit qui possède chaque morceau de mémoire et combien de temps il vit, donc si votre code peut toucher quelque chose qui n'existe plus, la compilation s'arrête. Les autres langages sûrs emploient un nettoyeur qui tourne à côté du programme et l'interrompt de temps en temps. Rust n'en a pas, il reste donc assez rapide pour les travaux où une pause est interdite, et ce mélange le fait apparaître dans les projets sensibles côté sécurité.
Voici la partie dont personne ne parle : écrire du Rust est plus lent, et les deux premiers mois ressemblent à une dispute avec le compilateur. Les développeurs qui le maîtrisent sont plus rares et plus chers, donc pour un site de réservation ou un magasin le calcul est mauvais. Un langage d'application web ordinaire finira plus vite et pour moins cher. Rust mérite son prix dans un espace étroit : un appareil difficile à mettre à jour, une partie qui ouvre des fichiers d'inconnus, un service attaqué en permanence.
Un usage touche quand même les produits ordinaires : une logique compliquée écrite une seule fois en Rust peut être intégrée dans une application Android et dans une application iPhone. Les règles vivent alors à un seul endroit au lieu de deux. Linkysoft ne le propose que si cette logique est vraiment difficile, car chaque langage en plus est une compétence à entretenir dans l'équipe. Si un prestataire vous propose Rust, demandez ce qui casse quand cette partie tombe, et une bonne réponse cite quelque chose de concret. Quand la réponse reste floue, Linkysoft préfère mettre l'argent dans une application mobile classique et un vrai audit de sécurité.
Questions sur Rust
Rust est-il difficile à apprendre ?
Mon logiciel de gestion doit-il être écrit en Rust ?
Rust rend-il mon logiciel sécurisé ?
Rust peut-il fonctionner avec le code que nous avons déjà ?
Les développeurs Rust coûtent-ils cher ?
Vous ne voyez toujours pas comment cela s'applique à votre projet ?
Dites-nous ce que vous construisez et nous vous répondrons simplement.