Passer au contenu principal
eLearner.app

Cours interactif

Cours Rust

Apprenez le langage de programmation Rust de zéro avec des explications détaillées, des exemples pratiques et des exercices interactifs : de la gestion des variables et des types primitifs à la gestion sécurisée de la mémoire avec ownership, borrowing, structs et méthodes.

Vérification statique par mots-clés + exécution sur le Rust Playground officiel (un clic pour copier le code + ouvrir).

01 · Fondements de Rust

2 leçons

Les bases du langage : variables, mutabilité, shadowing et utilisation des types primitifs scalaires et composés.

  1. 1.1Variables et mutabilitéComprendre l'immutabilité par défaut, l'utilisation du mot-clé mut et la puissance du shadowing en Rust.~10 min
  2. 1.2Types primitifsTypes de données primitifs scalaires (numériques, booléens, char) et composés (tuples et tableaux de taille fixe).~10 min

02 · Contrôle de flux

2 leçons

Prendre des décisions via des expressions conditionnelles, itérer avec des boucles et exploiter le pattern matching du langage.

  1. 2.1Conditionnels et bouclesBranchement avec if/else (utilisé comme expression) et itérations avec les constructions loop, while et for.~12 min
  2. 2.2Pattern matching, Option et ResultUtilisation de l'instruction match et des enums standard Option et Result pour une gestion sécurisée des erreurs.~15 min

03 · Ownership et Borrowing

2 leçons

Le cœur de la gestion de la mémoire en Rust : ownership, stack vs heap, move vs copy et utilisation sécurisée des références.

  1. 3.1Les règles de OwnershipLes trois règles clés de la gestion de la mémoire sans garbage collector, allocation dynamique, copy et transferts de propriété (ownership).~15 min
  2. 3.2Références et BorrowingPrêter des données via des références partagées (&) et mutables (&mut), et éviter les conditions de concurrence (data races) grâce aux règles du compilateur.~15 min

04 · Structures de données et Méthodes

2 leçons

Définir et organiser des types de données complexes personnalisés avec des structs et implémenter leur comportement via des blocs impl.

  1. 4.1Définir et instancier des StructsTypes de données structurés personnalisés en Rust : structs classiques, tuple structs et instanciation.~12 min
  2. 4.2Méthodes et blocs implAssocier des fonctions et des méthodes à une struct en utilisant impl, et comprendre la différence entre self, &self et &mut self.~12 min

05 · Generics et Traits

2 leçons

Développer du code flexible et réutilisable grâce aux types génériques et définir des comportements partagés via les Traits.

  1. 5.1Génériques et fonctionsSyntaxe des types génériques dans les fonctions et les structures de données pour éviter la duplication de code.~12 min
  2. 5.2Traits et Trait BoundsDéfinir des interfaces communes avec des Traits et contraindre les types génériques en utilisant la clause Trait Bound.~15 min

06 · Lifetimes et Smart Pointers

2 leçons

Gérer la durée de vie des références avec les lifetimes et analyser la gestion de la mémoire dans le tas via Box, Rc et Arc.

  1. 6.1Lifetimes et référencesComprendre le rôle du Borrow Checker et spécifier des annotations de lifetimes explicites si nécessaire.~15 min
  2. 6.2Smart Pointers: Box et RcAllocation dynamique dans le Tas via Box et pointeurs avec comptage de références multiples en utilisant Rc et Arc.~15 min

07 · Gestion des erreurs et Collections

2 leçons

Manipuler des collections dynamiques comme HashMap et gérer les erreurs/exceptions de manière avancée et idiomatique.

  1. 7.1Collections et HashMapUtiliser et manipuler des vecteurs dynamiques (Vec) et des dictionnaires clé-valeur (HashMap) pour collecter des données.~12 min
  2. 7.2Gestion des erreurs et opérateur ?Propager les erreurs proprement et linéairement en utilisant l'opérateur ? et implémenter des types d'erreur personnalisés.~15 min