
Formation aux bases de Rust
Les Fondamentaux de Rust vous donnent les outils pour écrire des logiciels système rapides, sécurisés et fiables dès le premier jour. Vous maîtriserez la possession, 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 du monde réel. Ce cours vous mène de votre premier programme compilé à un code Rust de niveau professionnel.
Ce que vous allez apprendre:
Configurez une chaîne d'outils Rust complète et gérez des projets avec Cargo dès le départ.
Appliquez les règles de possession, d'emprunt et de durée de vie pour écrire du code sûr en matière de 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 simultanés et asynchrones sécurisés à 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 propre 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étailsCommencer avec Rust
Commencer avec Rust
Leçon 1 • Installation et configuration de la chaîne d'outils
Guide 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 de travail reproductible.
Leçon 2 • Le système de construction Cargo
Présente Cargo comme l'outil de construction et 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 panic vs les erreurs récupérables. Prépare les étudiants au type Result abordé dans les chapitres suivants.
Leçon 2 • Structures 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, flottants, booléens, caractères, tuples et tableaux. Les étudiants apprennent l'inférence de types, 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 renvoient 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 démontre comment les valeurs se déplacent entre les portées. Les étudiants tracent 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 couramment utilisées.
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
Passe en revue 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 les blocs impl, en distinguant les méthodes des fonctions associées. Établit la base pour les 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 tuples et les structures unitaires, 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 motifs avancés
Étend le filtrage par motif à let, aux paramètres de fonction et aux chaînes if-let. Les étudiants écrivent du 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 motifs 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 type Option
Définit des énumérations avec des variantes portant 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 les objets traits
Contraste le dispatch statique avec dyn Trait pour le polymorphisme à l'exécution. Les étudiants choisissent entre les génériques et les objets traits 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 comme éléments de base essentiels. Les étudiants dérivent ou implémentent manuellement ces traits pour s'intégrer à l'écosystème Rust.
Leçon 4 • Définition et implémentation de traits
Introduit les traits comme des contrats de comportement partagés et montre comment les implémenter pour des types personnalisés. Fait le lien avec les 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 des types génériques. Les étudiants écrivent des contraintes lisibles en utilisant la syntaxe en ligne et la syntaxe where.
Chapitre 6MasquerCacher les détailsVoir les détailsGestion des erreurs et type Result
Gestion des erreurs et type Result
Leçon 1 • Utilisation de bibliothèques de gestion d'erreurs
Présente des crates populaires qui réduisent le code standard de gestion d'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 profondeur
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'erreurs personnalisés
Guide les étudiants dans la définition d'énumérations d'erreurs 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 d'erreurs
Montre comment ? propage les erreurs vers le haut de la pile d'appels, réduisant le code standard. Les étudiants refactorisent des blocs match verbeux en fonctions de propagation d'erreurs concises et lisibles.
Leçon 5 • Panique, déroulement et abandon
Explique quand les paniques sont acceptables, comment le déroulement fonctionne et comment intercepter 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
Passe en revue Vec, HashMap, HashSet, BTreeMap et VecDeque avec leurs caractéristiques de performance. Les étudiants sélectionnent la collection appropriée 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 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 • Performance et conscience des allocations
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 l'itération en Rust. Les étudiants implémentent un itérateur personnalisé pour solidifier le protocole.
Chapitre 8MasquerCacher les détailsVoir les détailsConcurrence et Rust asynchrone
Concurrence et Rust asynchrone
Leçon 1 • Fondamentaux de l'async/await
Introduit le trait Future, les fonctions async et le mot-clé await pour les E/S non bloquantes. Les étudiants comprennent en quoi l'asynchrone diffère des threads et quand préférer l'un à l'autre.
Leçon 2 • État partagé avec Mutex et Arc
Combine Arc pour la propriété partagée et Mutex pour la mutabilité interne à travers les threads. Les étudiants construisent un compteur thread-safe et comprennent l'empoisonnement de verrou.
Leçon 3 • Exécutants asynchrones et modèles pratiques
Passe en revue les exécutants asynchrones, la création 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
Génère des threads OS avec `std::thread` et explique comment `Send` et `Sync` imposent la sécurité des threads. Les étudiants comprennent pourquoi Rust empêche les situations de concurrence au niveau des types.
Leçon 5 • Passage de messages avec les canaux
Utilise les canaux std::sync::mpsc pour communiquer entre les threads sans état partagé. Les étudiants implémentent les patrons producteur-consommateur et comprennent la pression de canal.
Votre certificat valide de réussite
Ce cours est pour vous :
Développeur back-end : souhaite remplacer les services lents ou non 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 : a besoin de construire des outils CLI fiables et autonomes 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 relever le défi d'un langage exigeant.
Personne en reconversion professionnelle : vise des postes dans les systèmes embarqués ou les systèmes d'exploitation nécessitant 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 au Cameroun ?
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




















