Structure du cours

Cette page est destinée au formateur.

Fondamentaux de Rust

Les quatre premiers jours constituent les Fondamentaux de Rust. Le rythme est soutenu et nous couvrons beaucoup de sujets!

Course schedule:

  • Day 1 Morning (2 hours and 5 minutes, including breaks)
SegmentDuration
Bienvenue5 minutes
Bonjour le monde!15 minutes
Types and Values40 minutes
Flux de contrĂ´le40 minutes
  • Day 1 Afternoon (2 hours and 35 minutes, including breaks)
SegmentDuration
Tuples and Arrays35 minutes
Références55 minutes
User-Defined Types50 minutes
  • Day 2 Morning (2 hours and 55 minutes, including breaks)
SegmentDuration
Bienvenue3 minutes
Filtrage par motif1 hour
Read et Write50 minutes
Génériques40 minutes
  • Day 2 Afternoon (3 hours and 10 minutes, including breaks)
SegmentDuration
Bibliothèque standard1 hour and 20 minutes
Bibliothèque standard1 hour and 40 minutes
  • Day 3 Morning (2 hours and 20 minutes, including breaks)
SegmentDuration
Bienvenue3 minutes
Gestion de la mémoire1 hour
Smart Pointers55 minutes
  • Day 3 Afternoon (1 hour and 50 minutes, including breaks)
SegmentDuration
Emprunts50 minutes
Durées de vie50 minutes
  • Day 4 Morning (2 hours and 40 minutes, including breaks)
SegmentDuration
Bienvenue3 minutes
Itérateurs45 minutes
Modules40 minutes
Tester45 minutes
  • Day 4 Afternoon (2 hours and 10 minutes, including breaks)
SegmentDuration
Gestion des erreurs55 minutes
Rust non sécurisé (unsafe)1 hour and 5 minutes

Approfondissements

Au delà des quatre jours portant sur les Fondamentaux de Rust, nous couvrons également des sujets spécifiques:

Rust pour Android

Rust pour Android est un cours d’une demi-journée consacré à l’utilisation de Rust dans le cadre du développement pour la plate-forme Android. Ce cours couvre également l’interopérabilité avec les langages C, C++ et Java.

Vous aurez besoin d’un AOSP checkout. Effectuez un checkout du répertoire du cours sur la même machine et déplacez le dossier src/android/ à la racine de votre checkout AOSP. Cela assurera que le système de construction d’Android a accès aux fichiers Android.bp dans src/android/.

Assurez-vous que adb sync fonctionne avec votre émulateur ou votre appareil réel et pré-construisez tous les exemples Android en utilisant src/android/build_all.sh. Lisez le script pour voir les commandes éxécutées et assurez-vous qu’elles fonctionnent lorsque vous les exécutez à la main.

Rust pour Chromium

Le cours Rust pour Chromium dure une demi-journée et explore l’utilisation de Rust pour le navigateur Chromium. Il couvre l’utilisation de Rust au sein du système de compilation gn de Chromium, l’intégration de bibliothèques tierces (“crates”) et l’interopérabilité avec C++.

Vous aurez besoin de pouvoir compiler Chromium — une compilation debug par composant est recommandée pour pouvoir effectuer des itérations de développement plus rapidement. Assurez-vous que vous pouvez lancer le navigateur Chromium que vous avez compilé.

Bare-Metal Rust

Bare-metal Rust est un cours d’une journée consacré à l’utilisation de Rust pour le développement embarqué. Le cours touche à la fois aux microcontrôleurs et aux processeurs d’applications.

Pour la partie microcontrôleurs, vous devrez acheter la carte de développement BBC micro:bit v2 avant de commencer. Tous les participants à ce cours devront installer les paquets listés sur la page de bienvenue du cours.

Programmation concurrente en Rust

La programmation concurrente en Rust est un cours d’une journée portant sur la programmation concurrente classique ainsi que async/await.

Il faudra que vous ayez préparé une crate à jour et que vous ayez téléchargé et installé les dépendances. Vous pourrez ensuite copier/coller les exemples dans src/main.rs et les modifier:

cargo init concurrency
cd concurrency
cargo add tokio --features full
cargo run

Format du cours

Le cours se veut très interactif et nous recommandons de laisser les questions guider l’exploration de Rust !