Witamy w Comprehensive Rust 🦀
This is a free Rust course developed by the Android team at Google. The course covers the full spectrum of Rust, from basic syntax to advanced topics like generics and error handling.
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.
Celem kursu jest nauczenie Cię języka Rust. Zakładamy, że nic nie wiesz o Ruście i mamy nadzieję, że:
- Damy Ci kompleksowe zrozumienie składni i języka Rust.
- Umożliwimy modyfikowanie istniejących programów i pisanie nowych programów w Ruście.
- Pokażemy powszechne idiomy Rusta.
We call the first four course days Rust Fundamentals.
Building on this, you’re invited to dive into one or more specialized topics:
- Android: a half-day course on using Rust for Android platform development (AOSP). This includes interoperability with C, C++, and 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.
- Bare-metal: a whole-day class on using Rust for bare-metal (embedded) development. Both microcontrollers and application processors are covered.
- Concurrency: a whole-day class on concurrency in Rust. We cover both classical concurrency (preemptively scheduling using threads and mutexes) and async/await concurrency (cooperative multitasking using futures).
Poza zakresem
Rust to duży język i nie będziemy w stanie omówić go w całości w ciągu kilku dni. Niektóre cele będące poza zakresem tego kursu to:
- Learning how to develop macros: please see Chapter 19.5 in the Rust Book and Rust by Example instead.
Założenia
The course assumes that you already know how to program. Rust is a statically-typed language and we will sometimes make comparisons with C and C++ to better explain or contrast the Rust approach.
If you know how to program in a dynamically-typed language such as Python or JavaScript, then you will be able to follow along just fine too.
To jest przykład notatki dla prowadzącego. Użyjemy ich, aby dodać dodatkowe informacje do slajdów. Mogą to być kluczowe punkty, które prowadzący powinien omówić, a także odpowiedzi na typowe pytania, które pojawiają się na zajęciach.