Estructura del curso
Esta página está dirigida al instructor del curso.
Fundamentos de Rust
The first four days make up Rust Fundamentals. The days are fast paced and we cover a lot of ground!
Course schedule:
- Day 1 Morning (3 hours, including breaks)
- Welcome (5 minutes)
- Hello, World (20 minutes)
- Types and Values (1 hour and 5 minutes)
- Control Flow Basics (1 hour)
- Day 1 Afternoon (2 hours and 55 minutes, including breaks)
- Tuples and Arrays (1 hour)
- References (50 minutes)
- User-Defined Types (50 minutes)
- Day 2 Morning (3 hours and 5 minutes, including breaks)
- Welcome (3 minutes)
- Pattern Matching (50 minutes)
- Methods and Traits (55 minutes)
- Generics (45 minutes)
- Day 2 Afternoon (3 hours, including breaks)
- Standard Library Types (1 hour and 10 minutes)
- Standard Library Traits (1 hour and 40 minutes)
- Day 3 Morning (2 hours and 15 minutes, including breaks)
- Welcome (3 minutes)
- Memory Management (1 hour and 10 minutes)
- Smart Pointers (45 minutes)
- Day 3 Afternoon (2 hours and 20 minutes, including breaks)
- Borrowing (1 hour)
- Slices and Lifetimes (1 hour and 10 minutes)
- Day 4 Morning (3 hours and 5 minutes, including breaks)
- Day 4 Afternoon (2 hours, including breaks)
- Error Handling (45 minutes)
- Unsafe Rust (1 hour and 5 minutes)
Información más detallada
In addition to the 4-day class on Rust Fundamentals, we cover some more specialized topics:
Rust en Android
Rust en Android es un curso de medio día sobre el uso de Rust para el desarrollo de la plataforma Android. En él se incluye la interoperabilidad con C, C++ y Java.
Necesitarás conseguir el AOSP. Descarga el repositorio del curso en el mismo ordenador y mueve el directorio src/android/
a la raíz del AOSP. De esta forma, el sistema de compilación de Android verá los archivos Android.bp
en src/android/
.
Asegúrate que adb sync
funciona con tu emulador o en un dispositivo físico y haz pre-build en todos los ejemplos de Android usando src/android/build_all.sh
. Lee el script para ver los comandos que corren y asegúrate que funcionan cuando lo corres a mano.
Rust in Chromium
The Rust in Chromium deep dive is a half-day course on using Rust as part of the Chromium browser. It includes using Rust in Chromium’s gn
build system, bringing in third-party libraries (“crates”) and C++ interoperability.
You will need to be able to build Chromium — a debug, component build is recommended for speed but any build will work. Ensure that you can run the Chromium browser that you’ve built.
Bare-Metal Rust
Bare Metal Rust es una clase de un día sobre cómo usar Rust para el desarrollo bare-metal (insertado). Se tratarán tanto microcontroladores como procesadores de aplicaciones.
Para la parte de los microcontroladores, necesitarás comprar con antelación la segunda versión de la placa programable BBC micro:bit. Todo el mundo deberá instalar una serie de paquetes, tal como se describe en la página de bienvenida.
Concurrencia en Rust
Concurrencia en profundidad es una clase de un día sobre la concurrencia clásica y la concurrencia async
/await
.
Necesitarás configurar un nuevo crate, y descargar y preparar las dependencias. A continuación, podrás copiar y pegar los ejemplos en src/main.rs
para experimentar con ellos:
cargo init concurrency
cd concurrency
cargo add tokio --features full
cargo run
Formato
El curso está pensado para ser muy interactivo, por lo que te recomendamos que dejes que las preguntas guíen el aprendizaje de Rust.