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 !