Velkommen til Comprehensive Rust 🦀

Bygge-arbejdsgang GitHub-bidragsydere GitHub-stjerner

Dette er et gratis Rust-kursus udviklet af Android-teamet. Kurset dækker hele spektret af Rust, fra grundlæggende syntaks til avancerede emner som generiske typer og fejlhåndtering.

The latest version of the course can be found at https://google.github.io/comprehensive-rust/. If you are reading somewhere else, please check there for updates.

Målet med kurset er at lære dig Rust. Vi antager, at du ikke ved noget om Rust og håber at:

  • Give dig en omfattende forståelse af Rust-syntaksen og sproget.
  • Gøre det muligt for dig at ændre eksisterende programmer og skrive nye programmer i Rust.
  • Vise dig idiomatisk Rust.

We call the first four course days Rust Fundamentals.

Efterfølgende er du inviteret til at dykke ned i et eller flere specialiserede emner:

  • Android: en halv kursusdag om at bruge Rust til platformudvikling i Android (AOSP). Dette inkluderer interoperabilitet med C, C++ og Java.
  • Chromium: a half-day course on using Rust within Chromium based browsers. This includes interoperability with C++ and how to include third-party crates in Chromium.
  • Rå jern: en fuld kursusdag om at bruge Rust til udvikling på det rå jern og indlejrede (bare metal and embedded) systemer. Dækker både mikroprocessorer og applikationsprocessorer.
  • Samtidighed: en hel kursusdag om samtidighed (concurrency) i Rust. Vi dækker både klassisk samtidighed (tidsdelt multitasking ved hjælp af tråde og mutexes) og async/await samtidighed (kooperativ multitasking ved hjælp af futures).

Ting som ikke dækkes

Rust er et stort sprog og vi vil ikke være i stand til at dække det hele på et par dage. Nogle ting som vi ikke dækker er:

Antagelser

Kurset antager at du allerede ved hvordan man programerer. Rust er et statisk typet sprog og vi vil nogle gange sammenligne med C og C++ for bedre at kunne forklare Rust's tilgangsvinkel.

Hvis du ved hvordan man programmerer i et dynamisk typet sprog såsom Python eller JavaScript, så vil du også fint kunne følge med.

Dette er et eksempel på en note. Vi vil bruge disse til at tilføje yderligere information til siderne. Dette kan være nøglepunkter som instruktøren skal dække såvel som svar på typiske spørgsmål som bliver stillet i klassen.