Choisissez votre langue
Cours de programmation Rust
Plus de 2 millions d'apprenants dans le monde

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.

Dedika pour entreprises

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.

Cliquez ici

Contenu du cours

8 Chapitres • 40 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

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 2Voir les détails

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 3Voir les détails

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 4Voir les détails

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 5Voir les détails

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 6Voir les détails

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 7Voir les détails

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 8Voir les détails

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.

Certification

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...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
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.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
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 !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

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