Estructura del curso

Esta página está dirigida al instructor del curso.

Fundamentos de Rust

Los primeros tres días forman los Fundamentos de Rust. Los días son muy intensos y cubrimos mucho terreno:

  • Día 1: Rust Básico, sintaxis, control de flujo, creación y consumo de valores.
  • Día 2: Gestión de memoria, ownership (propiedad), tipos de datos compuestos y la biblioteca estándar.
  • Día 3: Genéricos, traits, gestión de errores, pruebas y unsafe (inseguro) Rust.

Información más detallada

Además de la clase de 3 días sobre los fundamentos de Rust, abordamos algunos temas más especializados:

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.

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.