
Formation aux bases de Rust
Rust Fundamentals vous donne les outils pour écrire des logiciels système rapides, sûrs et fiables dès le premier jour. Vous maîtriserez la propriété, l'emprunt et les durées de vie — les idées centrales qui rendent Rust unique — puis vous les appliquerez à la concurrence, à la gestion des erreurs et à des tâches système réelles. Ce cours vous mène de votre premier programme compilé à un code Rust de qualité professionnelle.
Ce que vous allez apprendre:
Configurez une chaîne d'outils Rust complète et gérez des projets avec Cargo depuis la base.
Appliquez les règles de propriété, d'emprunt et de durée de vie pour écrire du code sûr en mémoire sans ramasse-miettes.
Construisez des modèles de données expressifs à l'aide de structures, d'énumérations, de traits et de génériques pour une conception à sécurité de type.
Gérez les erreurs de manière explicite et idiomatique avec Result, Option, des types d'erreur personnalisés et l'opérateur ?.
Traitez les données efficacement à l'aide de collections standard, d'itérateurs paresseux et de fermetures dans des pipelines composables.
Implémentez des programmes concurrents et asynchrones sûrs à l'aide de threads, de canaux, de Mutex, d'Arc et d'async/await.
Comment vous étudiez de façon pratique Formation aux bases de Rust
Comment vous pratiquez Formation aux bases de Rust
Pour vous, entreprise, qui souhaitez former votre équipe
Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre activité et aux besoins spécifiques de votre entreprise.
Contenu du cours
8 Chapitres • 39 LeçonsDurée entre 4 et 360 heures (vous décidez)
Chapitre 1MasquerCacher les détailsVoir les détailsPremiers pas avec Rust
Premiers pas avec Rust
Leçon 1 • Installation et configuration de la chaîne d'outils
Détaille l'installation de rustup, la sélection des versions de la chaîne d'outils et la configuration d'un éditeur. Garantit que chaque étudiant dispose d'un environnement reproductible et fonctionnel.
Leçon 2 • Le système de construction Cargo
Présente Cargo comme l'outil de construction et le gestionnaire de paquets officiel de Rust. Les étudiants créent, construisent et exécutent leur premier projet à l'aide des commandes Cargo.
Leçon 3 • Écrire et exécuter votre premier programme
Guide les étudiants à travers un programme Rust minimal, en expliquant la fonction main, les macros et la sortie de compilation. Relie la syntaxe au modèle de langage plus large.
Leçon 4 • Philosophie de conception et cas d'utilisation de Rust
Couvre les objectifs de Rust en matière de sécurité mémoire, de performance et de concurrence sans ramasse-miettes. Explique pourquoi ces objectifs sont importants avant d'écrire du code.
Chapitre 2MasquerCacher les détailsVoir les détailsSyntaxe de base et types primitifs
Syntaxe de base et types primitifs
Leçon 1 • Fonctions et gestion des erreurs de base
Définit des fonctions avec des paramètres typés et des valeurs de retour, et introduit les erreurs panic vs récupérables. Prépare les étudiants pour le type Result abordé dans les chapitres suivants.
Leçon 2 • Constructions de flux de contrôle
Enseigne les constructions if, loop, while et for, y compris leurs formes d'expression. Les étudiants écrivent une logique de branchement et d'itération qui se compile sans avertissements.
Leçon 3 • Variables, mutabilité et masquage
Explique les liaisons let, la règle d'immuabilité par défaut et la sémantique de masquage. Établit l'approche stricte de Rust concernant l'état des variables dès le début du cours.
Leçon 4 • Types scalaires et composés
Couvre les entiers, les flottants, les booléens, les caractères, les tuples et les tableaux. Les étudiants apprennent l'inférence de type, les annotations explicites et les limites de chaque type.
Leçon 5 • Expressions, instructions et blocs
Distingue les expressions des instructions et montre comment les blocs retournent des valeurs. Ce modèle orienté expression sous-tend le code Rust idiomatique tout au long du cours.
Chapitre 3MasquerCacher les détailsVoir les détailsPropriété, emprunt et durées de vie
Propriété, emprunt et durées de vie
Leçon 1 • Règles de propriété et sémantique de déplacement
Définit les trois règles de propriété et montre comment les valeurs se déplacent entre les portées. Les étudiants retracent les transferts de propriété pour prédire quand les valeurs sont libérées.
Leçon 2 • Le type Slice
Couvre les slices de chaînes et les slices de tableaux en tant que types de référence vers des données contiguës. Renforce les concepts d'emprunt avec des vues de données pratiques et courantes.
Leçon 3 • Annotations de durée de vie
Explique les paramètres de durée de vie comme un moyen d'exprimer les relations de validité des références. Les étudiants annotent des fonctions et des structures pour satisfaire le vérificateur d'emprunt dans des scénarios complexes.
Leçon 4 • Modèles de propriété courants
Examine les modèles idiomatiques tels que le clonage, le retour de valeurs possédées et l'utilisation de Rc pour la propriété partagée. Fait le pont entre la théorie et les décisions de conception pratiques.
Leçon 5 • Références et emprunt
Introduit les références partagées et mutables ainsi que les règles d'alias du vérificateur d'emprunt. Les étudiants apprennent à passer des données sans transférer la propriété.
Chapitre 4MasquerCacher les détailsVoir les détailsStructures, énumérations et filtrage par motif
Structures, énumérations et filtrage par motif
Leçon 1 • Méthodes et fonctions associées
Attache un comportement aux structures via des blocs impl, distinguant les méthodes des fonctions associées. Établit la base des implémentations de traits dans le chapitre suivant.
Leçon 2 • Définition et utilisation des structures
Couvre les structures à champs nommés, les structures tuple et unité, ainsi que la syntaxe de mise à jour des structures. Les étudiants modélisent des données réelles et comprennent comment la propriété s'applique aux champs des structures.
Leçon 3 • Déstructuration et modèles avancés
Étend le filtrage par motif à let, aux paramètres de fonction et aux chaînes if-let. Les étudiants écrivent un code concis qui gère plusieurs formes de données sans conditionnels imbriqués.
Leçon 4 • Filtrage par motif avec match
Enseigne les expressions match exhaustives, les gardes et les modèles de liaison. Les étudiants déconstruisent des types de données complexes de manière sécurisée et lisible.
Leçon 5 • Énumérations et le type Option
Définit les énumérations avec des variantes contenant des données et explore Option comme l'alternative sans null de Rust. Les étudiants remplacent la logique nullable par une gestion exhaustive des énumérations.
Chapitre 5MasquerCacher les détailsVoir les détailsTraits et génériques
Traits et génériques
Leçon 1 • Dispatch dynamique avec objets trait
Oppose le dispatch statique à dyn Trait pour le polymorphisme à l'exécution. Les étudiants choisissent entre les génériques et les objets trait en fonction des besoins de performance et de flexibilité.
Leçon 2 • Fonctions et structures génériques
Introduit les paramètres de type sur les fonctions et les structures, permettant la réutilisation du code entre les types. Les étudiants écrivent des structures de données génériques et comprennent la monomorphisation.
Leçon 3 • Traits courants de la bibliothèque standard
Couvre Display, Debug, Clone, Copy, PartialEq et Iterator en tant qu'éléments de base essentiels. Les étudiants dérivent ou implémentent manuellement ces traits pour s'intégrer à l'écosystème de Rust.
Leçon 4 • Définition et implémentation de traits
Introduit les traits en tant que contrats de comportement partagé et montre comment les implémenter pour des types personnalisés. Relie aux traits les plus courants de la bibliothèque standard.
Leçon 5 • Contraintes de traits et clauses Where
Contraint les paramètres génériques avec des contraintes de traits pour permettre les appels de méthodes sur les types génériques. Les étudiants écrivent des contraintes lisibles en utilisant à la fois la syntaxe en ligne et la syntaxe where.
Chapitre 6MasquerCacher les détailsVoir les détailsGestion des erreurs et le type Result
Gestion des erreurs et le type Result
Leçon 1 • Utilisation de bibliothèques de gestion des erreurs
Présente des crates populaires qui réduisent le code passe-partout de la gestion des erreurs et améliorent l'ergonomie. Les étudiants évaluent quand une bibliothèque apporte une valeur ajoutée par rapport aux implémentations manuelles.
Leçon 2 • Result<T, E> en détail
Examine les variantes de Result, les combinateurs et les méthodes unwrap. Les étudiants comprennent quand chaque méthode est appropriée et ce qu'elle signale aux appelants.
Leçon 3 • Types d'erreur personnalisés
Guide les étudiants à travers la définition d'énumérations d'erreur spécifiques au domaine et l'implémentation des traits d'erreur standard. Produit des API avec des informations d'erreur structurées et informatives.
Leçon 4 • L'opérateur ? et la propagation des erreurs
Montre comment ? propage les erreurs dans la pile d'appels, réduisant le code passe-partout. Les étudiants refactorisent des blocs match verbeux en fonctions concises et lisibles propageant les erreurs.
Leçon 5 • Panique, déroulement et abandon
Explique quand les paniques sont acceptables, comment le déroulement fonctionne et comment attraper les paniques. Les étudiants établissent une politique claire pour l'utilisation de la panique dans les bibliothèques par rapport aux applications.
Chapitre 7MasquerCacher les détailsVoir les détailsCollections, itérateurs et fermetures
Collections, itérateurs et fermetures
Leçon 1 • Aperçu des collections standard
Présente Vec, HashMap, HashSet, BTreeMap et VecDeque avec leurs caractéristiques de performance. Les étudiants sélectionnent la bonne collection pour chaque exigence d'accès et d'ordre.
Leçon 2 • Fermetures et environnements capturés
Définit les fermetures comme des fonctions anonymes qui capturent leur environnement par référence ou par valeur. Les étudiants utilisent les traits Fn, FnMut et FnOnce pour exprimer les capacités des fermetures.
Leçon 3 • Adaptateurs et consommateurs d'itérateurs
Couvre map, filter, flat_map, take, zip et collect comme la boîte à outils d'adaptateurs de base. Les étudiants composent des pipelines paresseux qui s'exécutent seulement lorsqu'ils sont consommés.
Leçon 4 • Conscience de la performance et de l'allocation
Analyse les affirmations d'abstraction à coût zéro des itérateurs et les pièges d'allocation courants. Les étudiants profilent des pipelines simples et choisissent entre les itérateurs et les boucles manuelles lorsque cela est justifié.
Leçon 5 • Le trait Iterator
Explique la méthode next du trait Iterator et comment elle alimente toute itération en Rust. Les étudiants implémentent un itérateur personnalisé pour consolider le protocole.
Chapitre 8MasquerCacher les détailsVoir les détailsConcurrence et Rust asynchrone
Concurrence et Rust asynchrone
Leçon 1 • Fondamentaux d'Async/Await
Présente le trait Future, les fonctions asynchrones et le mot-clé await pour les entrées-sorties non bloquantes. Les étudiants comprendront la différence entre l'asynchrone et les threads et quand préférer l'une ou l'autre approche.
Leçon 2 • État partagé avec Mutex et Arc
Combine Arc pour la propriété partagée et Mutex pour la mutabilité intérieure à travers les threads. Les étudiants construisent un compteur thread-safe et comprennent l'empoisonnement de verrou.
Leçon 3 • Runtimes asynchrones et modèles pratiques
Présente les runtimes asynchrones, le lancement de tâches et les modèles asynchrones courants comme les timeouts et select. Les étudiants exécutent un programme asynchrone complet et gèrent des tâches concurrentes en toute sécurité.
Leçon 4 • Threads et traits Send et Sync
Spawn des threads du système d'exploitation avec std::thread et explique comment Send et Sync imposent la sécurité des threads. Les étudiants comprennent pourquoi Rust empêche les conditions de course au niveau du type.
Leçon 5 • Passage de messages avec les canaux
Utilise les canaux std::sync::mpsc pour communiquer entre threads sans état partagé. Les étudiants implémentent des patrons producteur-consommateur et comprennent la contre-pression des canaux.
Votre certificat valide de réussite
Ce cours est fait pour vous :
Développeur backend : souhaite remplacer des services lents ou peu sécurisés par des alternatives en Rust.
Programmeur C ou C++ : cherche des garanties de sécurité à la compilation sans sacrifier les performances brutes.
Ingénieur DevOps : doit construire des outils CLI autonomes et fiables pour l'automatisation de l'infrastructure.
Étudiant en informatique : prêt à approfondir sa compréhension de la gestion de la mémoire et des systèmes de types.
Programmeur amateur : curieux de la programmation système et motivé pour s'attaquer à un langage exigeant.
Personne en reconversion professionnelle : vise des postes embarqués ou systèmes qui exigent une expertise en programmation de bas niveau.
Ce que disent nos apprenants
Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...

J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.

J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !

La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.

Formations principales
FAQ
Qui est Dedika ?
Le certificat est-il valable en France ?
Les cours sont-ils gratuits ?
Quelle est la charge de travail des cours ?
Comment sont les cours ?
Comment fonctionnent les cours ?
Quelle est la durée des cours ?
Quel est le coût ou le prix des cours ?
Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?
Cours PDF




















