Introduction

Bienvenue dans ce cours Rust orienté vers les développeurs connaissant déjà C++.

A la base, Rust est pensé pour être un successeur de C++, donc les deux langages ont de nombreux points communs. Mon objectif est faire meilleur usage de votre temps qu’un cours généraliste en passant moins de temps à discuter des ressemblances, et plus de temps à discuter des différences.

Par rapport aux autres cours Rust que je connais, ce cours se veut…

  • Moins ennuyeux que The Rust Programming Language pour les programmeurs expérimentés.
  • Plus accessible que Programming Rust pour les francophones sans budget livres.
  • Au même niveau de détail : l’objectif n’est pas de tout savoir, mais d’avoir une bonne vision d’ensemble et assez de culture générale pour trouver l’information sur les sujets plus avancés.
  • Plus frontal dans le discours : c’est plus important pour moi de vous donner une vision claire des différences Rust/C++, que de ménager votre sensibilité sur les sujets qui fâchent.

Durant ce cours, vous allez rencontrer de nombreux exemples de code Rust, comme celui-ci :

fn main() {
    println!("Hello world");
}

En survolant le code avec votre souris, vous aurez accès à deux icônes vous permettant, dans l’ordre, de copier le code dans votre presse-papier, et de le compiler et exécuter pour en voir les résultats.

J’utiliserai aussi parfois des exemples de code éditables, comme celui-ci :

fn main() {
    println!("N'hésitez pas à me modifier");
}

Comme vous pouvez le constater, leur apparence est un peu différente, ce qui vous permettra de les repérer facilement. Notez aussi la présence d’un nouveau bouton au survol, qui vous permet de revenir à la version originale du code.

Cette fonctionnalité est basée sur l’excellent service Rust Playground. Si cela vous rappelle vaguement Godbolt, sachez que ce dernier possède lui aussi un support du code Rust.

Pour naviguer entre les différents chapitres, vous pouvez utiliser la barre sur votre gauche, les icônes de flèches sur le côté de chaque page ou les flèches de votre clavier.