Curso completo

Aprende Rust, no seas nutria.

Un recorrido progresivo para dominar el lenguaje más justiciero con la memoria.

Tu progreso

0%¿Todavía no has empezado?

Empezar Aprende Rust, no seas nutria.
  1. Antes de RustOpcional

    Una entrada opcional si necesitas repasar terminal, variables, funciones y compilación.

    3 lecciones
    1. –.1Programas y compilaciónDisponible12 min
    2. –.2La terminal sin miedoDisponible12 min
    3. –.3Variables, funciones y control de flujoDisponible18 min
  2. 00

    Preparación y mapa mental

    Instala Rust, conoce Cargo y entiende qué clase de problemas intenta resolver el lenguaje.

    4 lecciones
    1. 0.1Qué intenta resolver RustDisponible20 min
    2. 0.2Instalación y herramientasDisponible20 min
    3. 0.3Tu primer proyecto con CargoDisponible25 min
    4. 0.4Cómo leer al compiladorDisponible20 min
  3. 01

    Sintaxis y control de flujo

    Variables, tipos, expresiones, funciones y las estructuras que usarás en todo programa.

    4 lecciones
    1. 1.1Variables, mutabilidad y tiposPróximamente20 min
    2. 1.2Expresiones y funcionesPróximamente20 min
    3. 1.3Condiciones y buclesPróximamente20 min
    4. 1.4Macros básicasPróximamente20 min
  4. 02

    Ownership y préstamos

    Haz visible la memoria para entender moves, Copy, Clone, referencias y borrowing.

    4 lecciones
    1. 2.1Ownership y movimientosEn preparación25 min
    2. 2.2Referencias y préstamosPróximamente25 min
    3. 2.3Slices, String y UTF-8Próximamente25 min
    4. 2.4Diseñar firmas con ownershipPróximamente25 min
  5. 03

    Structs, enums y patrones

    Modela estados válidos con tipos y pattern matching exhaustivo.

    4 lecciones
    1. 3.1Structs, métodos y SelfPróximamente20 min
    2. 3.2Enums con datos y OptionPróximamente20 min
    3. 3.3Pattern matching exhaustivoPróximamente20 min
    4. 3.4Hacer imposibles estados inválidosPróximamente20 min
  6. 04

    Colecciones, texto y errores

    Trabaja con datos reales y trata ausencia, fallos y texto UTF-8 de forma explícita.

    4 lecciones
    1. 4.1Vectores y mapasPróximamente20 min
    2. 4.2String, str, bytes y charsPróximamente20 min
    3. 4.3Option, Result y el operador ?Próximamente20 min
    4. 4.4Diseño de erroresPróximamente20 min
  7. 05

    Crates, testing y documentación

    Organiza una base de código, define su API y comprueba que sigue funcionando.

    4 lecciones
    1. 5.1Módulos, crates y visibilidadPróximamente20 min
    2. 5.2Dependencias, SemVer y featuresPróximamente20 min
    3. 5.3Tests unitarios, integración y doc testsPróximamente20 min
    4. 5.4rustdoc, Clippy y CIPróximamente20 min
  8. 06

    Traits, genéricos e iteradores

    Construye abstracciones sin perder el control sobre tipos, costes y comportamiento.

    4 lecciones
    1. 6.1Traits y boundsPróximamente20 min
    2. 6.2Genéricos, impl Trait y dyn TraitPróximamente20 min
    3. 6.3Closures y capturasPróximamente20 min
    4. 6.4Iteradores y composiciónPróximamente20 min
  9. 07

    I/O y aplicaciones CLI

    Lee, transforma y escribe datos en una aplicación de terminal mantenible.

    4 lecciones
    1. 7.1Argumentos, entrada y salidaPróximamente20 min
    2. 7.2Archivos, paths y buffersPróximamente20 min
    3. 7.3Serde y configuraciónPróximamente20 min
    4. 7.4Diseñar una CLI testeablePróximamente20 min
  10. 08

    Smart pointers y mutabilidad interior

    Elige Box, Rc, Arc, Cell o RefCell por sus garantías, no por costumbre.

    4 lecciones
    1. 8.1Box, Deref y DropPróximamente20 min
    2. 8.2Rc, Arc y WeakPróximamente20 min
    3. 8.3Cell, RefCell, Mutex y RwLockPróximamente20 min
    4. 8.4Árboles, grafos y arenasPróximamente20 min
  11. 09

    Concurrencia y async

    Transfiere ownership entre tareas y diseña concurrencia con límites claros.

    4 lecciones
    1. 9.1Threads y canalesPróximamente20 min
    2. 9.2Send, Sync y estado compartidoPróximamente20 min
    3. 9.3Futures y async/awaitPróximamente20 min
    4. 9.4Cancelación y backpressurePróximamente20 min
  12. 10

    Rust idiomático y diseño de APIs

    Pasa de hacer que compile a diseñar APIs que expresan invariantes.

    4 lecciones
    1. 10.1Tipos que expresan invariantesPróximamente20 min
    2. 10.2Builders y typestatePróximamente20 min
    3. 10.3Composición y patronesPróximamente20 min
    4. 10.4Diseñar una API públicaPróximamente20 min
  13. 11

    Unsafe, FFI y no_std

    Entiende las obligaciones que aparecen cuando sales de las garantías seguras.

    4 lecciones
    1. 11.1Contratos de unsafePróximamente20 min
    2. 11.2Raw pointers y layoutPróximamente20 min
    3. 11.3FFI segura con CPróximamente20 min
    4. 11.4core, alloc y no_stdPróximamente20 min