
Cours de programmation Rust
Maîtrisez Rust de A à Z — de la possession et de l'emprunt à la concurrence asynchrone et à la programmation système. Ce cours couvre tout ce dont vous avez besoin pour écrire du code Rust rapide, sûr et prêt pour la production. Que vous construisiez des services Web, des outils CLI ou des logiciels système bas niveau, vous acquerrez les compétences nécessaires pour le faire correctement.
Ce que vous allez apprendre:
Vous commencerez par configurer votre chaîne d'outils Rust et apprendre la syntaxe de base, puis vous aborderez le modèle de possession, les règles d'emprunt et les durées de vie de Rust. Ensuite, vous travaillerez sur les structures, les énumérations, le filtrage de motifs et la gestion robuste des erreurs. Vous maîtriserez les collections, les itérateurs, les fermetures, les traits et les génériques avant d'aborder la concurrence avec les threads, les canaux et async/await. Le cours couvre également le Rust unsafe, la FFI, les tests, le profilage des performances, les macros, la programmation Web avec Axum et les workflows de déploiement CI/CD.
Comment vous étudiez de façon pratique Cours de programmation Rust
Comment vous pratiquez Cours de programmation 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 • 40 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 • Syntaxe Rust et types de base
Couvre les variables, les types scalaires et les expressions de base. Fournit le vocabulaire syntaxique nécessaire pour lire et écrire n'importe quel programme Rust.
Leçon 2 • Installation et configuration de Rust
Configurez rustup, cargo et un éditeur de code pour le développement Rust. Établit la base de la chaîne d'outils dont dépend chaque chapitre suivant.
Leçon 3 • Utiliser Cargo et les crates
Explore les commandes Cargo, la structure du projet et l'ajout de crates externes. Relie les connaissances syntaxiques aux flux de travail de projets réels utilisés tout au long du cours.
Leçon 4 • Fondamentaux du flux de contrôle
Enseigne les constructions if, loop, while et for en Rust. Permet aux étudiants d'écrire des programmes avec une logique de branchement et d'itération.
Leçon 5 • Fonctions et organisation du code
Définit des fonctions avec paramètres et types de retour, et introduit les modules. Prépare les étudiants à structurer des programmes au-delà d'une simple fonction main.
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 • 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 et de concevoir des API avec des données empruntées.
Leçon 2 • Références et emprunt
Introduit les références partagées et mutables avec les règles du vérificateur d'emprunt. Les étudiants apprennent à passer des données sans transférer la propriété.
Leçon 3 • Types tranche (slice) et chaîne de caractères
Couvre les références de tranche pour les tableaux et les chaînes, et distingue str de String. Fait le pont entre les concepts de propriété et la gestion pratique des chaînes et des collections.
Leçon 4 • Modèles de propriété en pratique
Applique les règles de propriété et d'emprunt à des scénarios de code réalistes. Consolide la compréhension en résolvant les conflits courants avec le vérificateur d'emprunt.
Leçon 5 • Règles de propriété et sémantique de déplacement
Explique la sémantique de propriétaire unique et comment les valeurs se déplacent entre les liaisons. Forme le noyau conceptuel sur lequel s'appuient toutes les règles d'emprunt et de durée de vie.
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 fonctions associées. Relie la modélisation des données à l'encapsulation de style orientée objet en Rust.
Leçon 2 • Énumérations et variantes
Définit des énumérations avec des variantes contenant des données et introduit Option. Permet de modéliser des valeurs pouvant prendre l'une de plusieurs formes distinctes.
Leçon 3 • Filtrage par motif avec match
Utilise les expressions match pour déstructurer les énumérations, les tuples et les structures. Enseigne la gestion exhaustive des motifs, centrale au flux de contrôle idiomatique en Rust.
Leçon 4 • if let et motifs avancés
Introduit le filtrage concis par motif avec if let, while let et les motifs imbriqués. Étend les compétences en matière de motifs à des scénarios quotidiens de condition et de boucle.
Leçon 5 • Définir et utiliser des structures
Couvre la définition d'une structure, son instanciation et l'accès aux champs. Fournit l'outil principal pour regrouper des données connexes dans les programmes Rust.
Chapitre 4MasquerCacher les détailsVoir les détailsGestion des erreurs en Rust
Gestion des erreurs en Rust
Leçon 1 • Paniques et erreurs irrécupérables
Explique quand Rust panique, comment déclencher et attraper les paniques, et quand les utiliser. Définit la frontière entre les scénarios d'erreur justifiant une panique et ceux récupérables.
Leçon 2 • Types d'erreur personnalisés
Définit des énumérations d'erreur personnalisées et implémente le trait Error. Permet aux bibliothèques et aux applications d'exposer des informations d'erreur structurées et significatives.
Leçon 3 • Stratégies de gestion d'erreur
Compare les erreurs encapsulées, les types personnalisés et anyhow pour le code applicatif vs les bibliothèques. Guide les étudiants dans le choix de la stratégie appropriée pour chaque contexte.
Leçon 4 • L'opérateur ? et la propagation d'erreur
Utilise l'opérateur ? pour propager concisément les erreurs vers le haut de la pile d'appels. Réduit le code boilerplate et rend le code de gestion d'erreur lisible et idiomatique.
Leçon 5 • Le type Result
Couvre la définition de Result<T, E>, la correspondance sur Ok et Err, et les combinateurs courants. Fournit le mécanisme principal pour propager les erreurs récupérables.
Chapitre 5MasquerCacher les détailsVoir les détailsCollections, itérateurs et fermetures
Collections, itérateurs et fermetures
Leçon 1 • Itérateurs consommateurs
Utilise collect, fold, sum et d'autres consommateurs pour produire des résultats à partir d'itérateurs. Achève le pipeline d'itérateur de la source, via la transformation, jusqu'à la sortie.
Leçon 2 • Trait Iterator et adaptateurs
Explore le trait Iterator, l'évaluation paresseuse et les méthodes adaptatrices. Enseigne la transformation de données de style fonctionnel, centrale au Rust idiomatique.
Leçon 3 • Itérateurs personnalisés
Implémente le trait Iterator sur des types personnalisés pour produire des séquences. Approfondit la compréhension du fonctionnement interne du mécanisme d'itération de Rust.
Leçon 4 • Fermetures et capture de l'environnement
Définit les fermetures, leurs modes de capture et les bornes du trait Fn. Permet de passer un comportement comme valeur, ce qui est requis par les itérateurs et les fonctions d'ordre supérieur.
Leçon 5 • Vecteurs et collections courantes
Couvre la création, l'accès et la mutation de Vec<T>, String et HashMap<K, V>. Fournit les conteneurs de données standard utilisés dans presque tous les programmes Rust.
Chapitre 6MasquerCacher les détailsVoir les détailsTraits, génériques et polymorphisme
Traits, génériques et polymorphisme
Leçon 1 • Définir et implémenter des traits
Crée des traits avec des méthodes obligatoires et par défaut et les implémente sur des types. Établit le mécanisme de comportement partagé sur lequel reposent les génériques et le polymorphisme.
Leçon 2 • Techniques avancées de traits
Couvre les types associés, la surcharge d'opérateurs et le motif Newtype. Étend les connaissances sur les traits à des scénarios avancés de conception d'API.
Leçon 3 • Objets trait et dispatch dynamique
Utilise les pointeurs dyn Trait pour le polymorphisme à l'exécution et explique les coûts de la vtable. Enseigne quand le dispatch dynamique est approprié par rapport au dispatch statique.
Leçon 4 • Bornes de traits et clauses where
Contraint les types génériques avec des bornes de traits et des clauses where. Permet au code générique d'appeler des méthodes de trait tout en gardant les signatures lisibles.
Leçon 5 • Fonctions et types génériques
Paramétrise les fonctions, les structures et les énumérations avec des paramètres de type. Permet d'écrire du code fonctionnant avec de nombreux types tout en restant sûr au niveau des types.
Chapitre 7MasquerCacher les détailsVoir les détailsConcurrence et Rust asynchrone
Concurrence et Rust asynchrone
Leçon 1 • Fondamentaux d'Async/Await
Introduit les futures, les fonctions async et le mot-clé await avec un moteur d'exécution. Prépare les étudiants aux motifs d'application à haute concurrence et aux E/S non bloquantes.
Leçon 2 • Traits Send et Sync
Explique les traits marqueurs Send et Sync et leur rôle dans la sécurité des threads. Permet aux étudiants de raisonner sur les types qui peuvent traverser les frontières de thread.
Leçon 3 • Threads et état partagé
Lance des threads OS, partage des données avec Arc et Mutex, et évite les accès concurrents. Démontre comment les règles de propriété imposent la sécurité des threads à la compilation.
Leçon 4 • Motifs asynchrones et pièges
Couvre les futures concurrentes, le lancement de tâches et les erreurs asynchrones courantes. Équipe les étudiants pour construire des programmes asynchrones corrects et efficaces dans des contextes de production.
Leçon 5 • Passage de messages avec les canaux
Utilise les canaux mpsc pour communiquer entre threads sans mémoire partagée. Introduit le modèle de concurrence par passage de messages comme alternative au verrouillage.
Chapitre 8MasquerCacher les détailsVoir les détailsProgrammation système et Rust unsafe
Programmation système et Rust unsafe
Leçon 1 • Disposition mémoire et pointeurs bruts
Examine comment Rust dispose les données en mémoire et introduit la syntaxe des pointeurs bruts. Fournit les bases de bas niveau nécessaires aux opérations unsafe.
Leçon 2 • Environnements embarqués et no_std
Configure Rust pour les cibles no_std et utilise les crates core et alloc. Étend les compétences Rust aux microcontrôleurs et aux environnements sans système d'exploitation.
Leçon 3 • Allocateurs personnalisés et gestion de la mémoire
Implémente le trait Allocator et explore l'allocation par arène et par pool. Répond aux scénarios critiques en termes de performances où l'allocation par défaut est insuffisante.
Leçon 4 • Interface de fonctions étrangères (FFI)
Appelle des fonctions C depuis Rust et expose des fonctions Rust à C en utilisant extern. Permet l'intégration avec des bibliothèques natives existantes et des API système.
Leçon 5 • Blocs unsafe et fonctions unsafe
Définit ce que unsafe permet et comment minimiser sa portée. Enseigne l'utilisation responsable de unsafe pour étendre les capacités sans sacrifier la correction.
Votre certificat valide de réussite
Ce cours est fait pour vous :
Développeur backend : souhaite remplacer des services lents ou peu sûrs par des alternatives en Rust.
Programmeur C ou C++ : recherche une sécurité à la compilation sans sacrifier le contrôle bas niveau.
Créateur passionné : enthousiaste à l'idée de réaliser des outils CLI et des projets système en Rust.
Personne en reconversion professionnelle : vise des postes d'ingénieur très demandés nécessitant des compétences en programmation système.
Ingénieur DevOps : doit écrire des outils fiables et performants pour les pipelines d'infrastructure.
Étudiant en informatique : prêt à dépasser les cours et à aborder le développement Rust concret.
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




















