Ir al contenido

Próximos pasos en Rust

Si ya recorriste los temas de este curso, sabes suficiente Rust para crear programas de verdad: variables, control de flujo, funciones, ownership (propiedad), borrowing (préstamo), colecciones, módulos, manejo de errores, traits (rasgos), genéricos, e incluso hilos, punteros inteligentes, unsafe y macros. Eso es, de verdad, la mayor parte de lo que vas a usar en el día a día. Lo que queda es sobre todo práctica, e ir aprendiendo cada biblioteca a medida que la necesites.

La forma más rápida de aprender a partir de aquí es elegir un proyecto pequeño y atascarte unas cuantas veces. Este sitio tiene cinco proyectos guiados para empezar:

Cuando los termines, prueba uno por tu cuenta:

  • Una calculadora sencilla — practica match, Result y el manejo de errores cuando la entrada no es válida.
  • Un lector de configuración en JSON — carga ajustes desde un archivo con Serde.
  • Un pequeño web scraper o cliente de API — descarga una URL con reqwest usando async/await.

¿No tienes claro qué tipo de programa quieres construir? Las páginas de “Qué puedes construir” muestran en qué destaca Rust y qué crates usa la gente: redes, bases de datos, apps de escritorio con interfaz gráfica, videojuegos y microcontroladores.

¿Prefieres practicar con algo más pequeño primero? Resuelve los Ejercicios o ponte a prueba con las Preguntas de entrevista.

El ecosistema de paquetes de Rust (los crates, que se distribuyen a través de crates.io) cubre casi todo lo que querrías resolver con una biblioteca. Estos aparecen todo el tiempo:

Puedes agregar cualquiera de ellos a un proyecto con cargo add <nombre del crate>, sin necesidad de otro gestor de paquetes. La página Cargo y crates explica cómo funciona y cómo elegir un buen crate.

Este curso llegó más lejos que la mayoría de los tutoriales para principiantes: incluye cosas como punteros inteligentes, hilos y canales, async/await, Rust unsafe, llamar a código C (FFI), WebAssembly y cómo escribir tus propias macros con macro_rules!. Algunos temas más avanzados tienen su propia página, para cuando estés listo:

  • Macros procedurales — el primo más potente (y más complejo) de las macros macro_rules! de la página Macros; son las que hacen funcionar #[derive(Debug)] y cosas similares por dentro
  • no_std / Rust embebido — escribir Rust sin la biblioteca estándar, para microcontroladores y otros entornos con pocos recursos

No necesitas nada de esto para escribir Rust útil. Vale la pena saber que existen, y aprenderlos cuando de verdad te encuentres con un problema que los necesite.

  • El libro de Rust (traducción de la comunidad) o The Rust Book (en inglés) — vuelve a leerlo ahora que lo básico ya tiene sentido; mucho de su contenido se entiende mejor la segunda vez
  • Rust by Example (en inglés) — más código comentado para leer
  • Rustlings (en inglés) — pequeños ejercicios que vas arreglando, directamente en tu terminal
  • This Week in Rust (en inglés) — un boletín semanal para ver qué está construyendo la comunidad

Vas a seguir encontrándote errores del compilador que te confundan, y es normal: les pasa a personas que llevan años escribiendo Rust, no solo a principiantes. La diferencia que da la experiencia no es que los errores desaparezcan, sino que aprendes a leerlos más rápido. Sigue escribiendo código, sigue leyendo lo que te dice el compilador, y cada vez será más fácil.

Mucha suerte, y gracias por llegar hasta aquí. 🦀

Comprueba lo aprendido

1. ¿Qué crate se recomienda aquí para leer y escribir JSON?

2. ¿Qué crate se menciona para la programación asíncrona?

3. ¿Cuál de estos temas aparece en la página como uno que NO se cubrió?

Puntuación: 0 / 3