
Cours de programmation Rust
Maîtrisez Rust depuis les bases — 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 de bas niveau, vous acquerrez les compétences 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 passerez au modèle de possession de Rust, aux règles d'emprunt et aux durées de vie. À partir de là, vous travaillerez sur les structures, les énumérations, le filtrage de motifs et une 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 l'async/await. Le cours couvre également le Rust non sécurisé, 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 propre 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 tout programme Rust.
Leçon 2 • Installation et configuration de Rust
Mettez en place rustup, cargo et un éditeur de code pour le développement Rust. Établit les fondations de la chaîne d'outils dont dépend chaque chapitre suivant.
Leçon 3 • Utilisation de Cargo et des crates
Explore les commandes Cargo, la structure de projet et l'ajout de crates externes. Relie les connaissances syntaxiques aux workflows de projet réels utilisés tout au long du cours.
Leçon 4 • Fondamentaux du contrôle de flux
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 • Slices et types String
Couvre les références de slices pour les tableaux et les chaînes, et distingue str de String. Relie les concepts de propriété à 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 des 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été unique et comment les valeurs se déplacent entre les liaisons. Forme le noyau conceptuel sur lequel toutes les règles d'emprunt et de durée de vie sont construites.
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 du comportement aux structures via les blocs impl et les fonctions associées. Relie la modélisation des données à l'encapsulation de style orienté 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 qui peuvent 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 contrôle de flux idiomatique en Rust.
Leçon 4 • if let et motifs avancés
Introduit le filtrage par motif concis 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éfinition et utilisation de structures
Couvre la définition, l'instanciation et l'accès aux champs des structures. Fournit l'outil principal pour regrouper des données associées 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 intercepter les paniques, et quand les utiliser. Définit la frontière entre les scénarios méritant une panique et les erreurs 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 applications d'exposer des informations d'erreur structurées et significatives.
Leçon 3 • Stratégies de gestion des erreurs
Compare les erreurs encapsulées, les types personnalisés et anyhow pour le code d'application vs. le code de bibliothèque. Guide les étudiants dans le choix de la stratégie appropriée pour chaque contexte.
Leçon 4 • L'opérateur ? et la propagation des erreurs
Utilise l'opérateur ? pour propager les erreurs vers le haut de la pile d'appels de manière concise. Réduit le code répétitif et rend le code de gestion des erreurs lisible et idiomatique.
Leçon 5 • Le type Result
Couvre la définition de Result<T, E>, le filtrage sur Ok et Err, et les combinateurs courants. Fournit le mécanisme principal de propagation des 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. Complète le pipeline d'itérateurs de la source à la transformation et à la sortie.
Leçon 2 • Trait Iterator et adaptateurs
Explore le trait Iterator, l'évaluation paresseuse et les méthodes d'adaptation. 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érateur de Rust.
Leçon 4 • Fermetures et capture de l'environnement
Définit les fermetures, leurs modes de capture et les contraintes de trait Fn. Permet de passer un comportement comme valeur, ce que nécessitent 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éfinition et implémentation de 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 sur les traits
Couvre les types associés, la surcharge d'opérateurs et le motif Newtype. Étend les connaissances sur les traits à des scénarios de conception d'API sophistiqués.
Leçon 3 • Objets trait et dispatch dynamique
Utilise les pointeurs dyn Trait pour le polymorphisme à l'exécution et explique les coûts des tables virtuelles. Enseigne quand le dispatch dynamique est approprié par rapport au dispatch statique.
Leçon 4 • Bornes de trait et clauses where
Contraint les types génériques avec des bornes de trait 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ètre les fonctions, les structures et les énumérations avec des paramètres de type. Permet d'écrire du code qui fonctionne sur de nombreux types tout en restant sûr pour les types.
Chapitre 7MasquerCacher les détailsVoir les détailsProgrammation concurrente et Rust asynchrone
Programmation concurrente et Rust asynchrone
Leçon 1 • Fondamentaux d'Async/Await
Introduit les futures, les fonctions async et le mot-clé await avec un environnement d'exécution. Prépare les étudiants pour l'E/S non bloquante et les modèles d'application à haute concurrence.
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 des threads.
Leçon 3 • Threads et état partagé
Crée des threads du système d'exploitation, partage des données avec Arc et Mutex, et évite les courses aux données. Montre comment les règles de propriété imposent la sécurité des threads à la compilation.
Leçon 4 • Modèles asynchrones et pièges
Couvre les futures concurrentes, la création 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 les 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 la base de bas niveau requise pour les opérations unsafe.
Leçon 2 • Environnements embarqués et sans-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
Appelle des fonctions C depuis Rust et expose des fonctions Rust au C en utilisant extern. Permet l'intégration avec des bibliothèques natives existantes et des API système.
Leçon 5 • Blocs 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 pour vous :
Développeur backend : souhaite remplacer les services lents ou non sécurisés par des alternatives en Rust.
Programmeur C ou C++ : recherche la sécurité à la compilation sans sacrifier le contrôle de bas niveau.
Constructeur passionné : enthousiaste à l'idée de créer des outils CLI et des projets systèmes en Rust.
Personne en reconversion professionnelle : vise des postes d'ingénieur très demandés qui exigent des compétences en programmation système.
Ingénieur DevOps : a besoin d'écrire des outils fiables et performants pour les pipelines d'infrastructure.
Étudiant en informatique : prêt à dépasser les travaux de 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 Côte d’Ivoire ?
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




















