
Formation Rust
Maîtrisez Rust de A à Z — de la possession et des durées de vie à la concurrence asynchrone et à la programmation système. Cette formation approfondie couvre tout ce dont un développeur actif a besoin pour écrire du code Rust sûr, rapide et prêt pour la production. Que vous construisiez des API web, des outils CLI ou des logiciels système de bas niveau, ce cours vous y mènera.
Ce que votre équipe va maîtriser:
Vous construirez une base solide dans la syntaxe fondamentale de Rust, son modèle de possession et son système de types avant de passer aux traits, aux génériques et à la gestion des erreurs. Vous apprendrez à traiter des données avec des itérateurs et des fermetures, à écrire des programmes concurrents à l'aide de threads et d'async/await avec Tokio, et à interagir avec les ressources système via du Rust unsafe et la FFI. Le cours couvre également le développement web avec Axum et SQLx, le profilage des performances, la rédaction de macros et la publication de crates. À la fin, vous aurez les compétences nécessaires pour concevoir, tester et livrer des applications Rust réelles en toute confiance.
Comment votre équipe apprend de façon pratique Formation Rust
Comment votre équipe s’exerce Formation Rust
Des professionnels de ces entreprises apprennent sur Dedika









Contenu du cours
8 Chapitres • 40 LeçonsDurée entre 4 et 360 heures (vous décidez)
Chapitre 1MasquerCacher les détailsVoir les détailsFondamentaux de Rust et configuration de l'environnement de développement
Fondamentaux de Rust et configuration de l'environnement de développement
Leçon 1 • Fondamentaux du flux de contrôle
Enseigne les structures if/else, les boucles et le filtrage par motif. Permet aux étudiants de diriger l'exécution du programme via des branchements et des itérations.
Leçon 2 • Fonctions et modules
Définit les signatures de fonctions, les types de retour et la visibilité des modules. Établit les motifs d'organisation du code utilisés tout au long du cours.
Leçon 3 • Syntaxe de base et types de données
Introduit les variables, les types scalaires et les types composés. Construit le vocabulaire nécessaire pour exprimer la logique dans chaque chapitre ultérieur.
Leçon 4 • Cargo et structure du projet
Explore les commandes Cargo, Cargo.toml et la disposition de l'espace de travail. Les étudiants acquièrent les compétences en gestion de projet nécessaires pour tous les exercices pratiques.
Leçon 5 • Installation et configuration de Rust
Couvre rustup, la gestion des chaînes d'outils et l'intégration à l'IDE. Fournit la base pour tout travail ultérieur de compilation et de projet.
Chapitre 2MasquerCacher 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éférences et emprunt
Introduit les références partagées et mutables avec les règles d'emprunt. Les étudiants apprennent à passer des données sans transférer la propriété.
Leçon 2 • Règles de propriété et sémantique de déplacement
Explique l'invariant de propriétaire unique et les déplacements de valeur. Concerne directement les erreurs de compilation les plus courantes chez les débutants en Rust.
Leçon 3 • Annotations de durée de vie
Enseigne la syntaxe explicite de durée de vie pour les fonctions et les structures. Permet aux étudiants de résoudre les erreurs de durée de vie que le compilateur ne peut pas déduire automatiquement.
Leçon 4 • Types tranche
Couvre les tranches de chaînes et les tranches de tableaux en tant que vues de référence. Relie les concepts d'emprunt à des motifs d'accès aux données pratiques.
Leçon 5 • Motifs de propriété courants
Passe en revue Rc, RefCell et la mutabilité intérieure pour la propriété partagée. Prépare les étudiants aux scénarios réels où la propriété unique est insuffisante.
Chapitre 3MasquerCacher 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
Ajoute un comportement aux structures via les blocs impl et les constructeurs. Fait le pont entre la modélisation de données et l'encapsulation de style orienté objet en Rust.
Leçon 2 • Définition et utilisation de structures
Couvre les structures nommées, tuples et unitaires avec accès aux champs. Fournit l'outil principal pour regrouper des données connexes tout au long du cours.
Leçon 3 • Filtrage par motif avancé
Étend match à la déstructuration, aux gardes et aux liaisons. Permet un traitement concis et exhaustif de formes de données complexes.
Leçon 4 • Énumérations et type Option
Introduit les énumérations avec variantes de données et le type Option<T>. Élimine les erreurs de pointeur nul en encodant l'absence de manière explicite dans le système de types.
Leçon 5 • if let et while let
Introduit des constructions concises de filtrage par motif unique. Réduit le code passe-partout lorsqu'une seule variante nécessite d'être traitée.
Chapitre 4MasquerCacher les détailsVoir les détailsTraits, génériques et polymorphisme
Traits, génériques et polymorphisme
Leçon 1 • Traits de la bibliothèque standard
Passe en revue Display, Debug, From, Into, Iterator et Clone. L'intégration de ces traits permet aux types personnalisés d'interopérer avec l'ensemble de l'écosystème.
Leçon 2 • Bornes de trait et clauses Where
Contraint les génériques avec des bornes de trait et la syntaxe where. Permet au compilateur de vérifier que les types génériques prennent en charge les opérations requises.
Leçon 3 • Fonctions et structures génériques
Introduit les paramètres de type pour les fonctions, les structures et les énumérations. Permet d'écrire des algorithmes qui fonctionnent sur tout type compatible.
Leçon 4 • Distribution dynamique avec les objets trait
Compare la distribution statique avec dyn Trait pour le polymorphisme à l'exécution. Les étudiants choisissent la stratégie de distribution adaptée à chaque scénario de conception.
Leçon 5 • Définition et implémentation de traits
Couvre la déclaration de trait, les méthodes par défaut et l'implémentation. Établit le principal mécanisme d'abstraction utilisé dans toutes les bibliothèques Rust.
Chapitre 5MasquerCacher les détailsVoir les détailsGestion d'erreurs et types Result
Gestion d'erreurs et types Result
Leçon 1 • L'opérateur ? et la propagation
Enseigne l'opérateur ? pour une propagation concise des erreurs dans les fonctions. Réduit considérablement le code passe-partout dans les fonctions qui appellent plusieurs opérations sujettes aux erreurs.
Leçon 2 • Types d'erreur personnalisés
Couvre la définition d'enums d'erreur, l'implémentation de std::error::Error et les conversions. Permet aux bibliothèques d'exposer des informations d'erreur structurées et significatives.
Leçon 3 • Gestion d'erreurs dans les applications
Introduit anyhow pour l'agrégation d'erreurs au niveau application et le contexte. Fait le pont entre les erreurs typées de type bibliothèque et les messages de diagnostic destinés à l'utilisateur.
Leçon 4 • Panique et erreurs irrécupérables
Explique panic!, assert! et le déroulement de la pile. Établit quand il est approprié de faire planter le programme versus quand les erreurs doivent être propagées.
Leçon 5 • Result<T, E> et erreurs récupérables
Introduit les variantes Result, la gestion basée sur match et le chaînage de méthodes. Fournit la base pour toutes les opérations sujettes aux erreurs en Rust.
Chapitre 6MasquerCacher les détailsVoir les détailsCollections, itérateurs et fermetures
Collections, itérateurs et fermetures
Leçon 1 • Itérateurs personnalisés
Guide les étudiants dans l'implémentation de Iterator sur des structures personnalisées. Approfondit la compréhension du système de traits et permet une itération spécifique au domaine.
Leçon 2 • Fermetures et capture
Explique la syntaxe des fermetures, les modes de capture et les familles de traits Fn. Permet de passer des comportements en tant que valeurs aux itérateurs et aux fonctions d'ordre supérieur.
Leçon 3 • Vec, HashMap et HashSet
Couvre la création, l'insertion, la recherche et la suppression pour les collections principales. Fournit les structures de données utilisées dans la majorité des programmes Rust réels.
Leçon 4 • Itérateurs consommateurs et collect
Couvre les consommateurs fold, sum, count, collect et partition. Convertit les pipelines paresseux en résultats concrets et en collections.
Leçon 5 • Trait Iterator et adaptateurs
Introduit le trait Iterator, l'évaluation paresseuse et le chaînage d'adaptateurs. Les étudiants composent des pipelines de données expressifs sans allocations intermédiaires.
Chapitre 7MasquerCacher les détailsVoir les détailsProgrammation concurrente et asynchrone
Programmation concurrente et asynchrone
Leçon 1 • Passage de messages avec les canaux
Enseigne les canaux mpsc pour la communication inter-threads. Démontre le modèle de concurrence par passage de messages comme alternative à l'état partagé.
Leçon 2 • Essentiels de l'exécution Tokio
Couvre la configuration de l'exécuteur Tokio, les tâches asynchrones et les primitives d'E/S asynchrones. Permet aux étudiants de construire des applications réseau réelles avec l'environnement d'exécution asynchrone dominant.
Leçon 3 • Primitives de synchronisation
Passe en revue Mutex asynchrone, RwLock, Semaphore et Notify de Tokio. Équipe les étudiants pour coordonner des tâches concurrentes sans courses aux données.
Leçon 4 • Fondamentaux de l'async/await
Introduit le trait Future, async fn et la syntaxe .await. Fournit le modèle conceptuel pour les E/S non bloquantes dans les applications Rust.
Leçon 5 • Threads et état partagé
Couvre thread::spawn, les handles de join et les données partagées protégées par Mutex. Introduit les traits Send et Sync qui imposent la sécurité des threads à la compilation.
Chapitre 8MasquerCacher les détailsVoir les détailsProgrammation système et Rust unsafe
Programmation système et Rust unsafe
Leçon 1 • Blocs et fonctions unsafe
Explique les cinq super-pouvoirs unsafe et comment les encapsuler. Les étudiants apprennent à minimiser la surface unsafe et à documenter les invariants de sécurité.
Leçon 2 • Interface de fonctions étrangères (FFI)
Couvre les blocs extern, l'ABI C et l'appel de bibliothèques C depuis Rust. Permet l'intégration avec des bases de code natives existantes et des bibliothèques système.
Leçon 3 • Pointeurs bruts et disposition mémoire
Introduit *const T et *mut T, l'arithmétique des pointeurs et l'alignement mémoire. Fournit la base pour la FFI et la gestion manuelle de la mémoire.
Leçon 4 • Allocateurs personnalisés et gestion mémoire
Introduit le trait GlobalAlloc, jemalloc et l'allocation par arène (arena). Permet un contrôle mémoire fin pour les applications critiques en termes de performances.
Leçon 5 • Environnements embarqués et no-std
Couvre l'attribut no_std, la bibliothèque core et les cibles bare-metal. Prépare les étudiants à déployer Rust sur des microcontrôleurs et des systèmes à ressources limitées.
Votre certificat valide de réussite
Ce cours est fait pour vous :
Développeur backend : souhaite des alternatives plus rapides et plus sûres aux langages avec ramasse-miettes.
Programmeur C ou C++ : recherche des outils modernes et des garanties de sécurité mémoire à la compilation.
Ingénieur en systèmes embarqués : a besoin d'un langage de bas niveau avec de fortes contraintes de sécurité.
Étudiant en informatique : développement des compétences fondamentales dans les concepts de programmation au niveau système.
Personne en reconversion professionnelle : passe de rôles axés sur les scripts à une ingénierie compilée et axée sur la performance.
Ingénieur DevOps ou infrastructure : automatise et optimise les outils avec un langage compilé.
Cours associés
FAQ
Qui est Dedika ?
Le certificat est-il valable en France ?
Les cours sont-ils gratuits ?
Quelle est la charge de travail du 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



















