¡Bienvenido/a! Este repositorio está diseñado para ayudarte a aprender Rust, uno de los lenguajes de programación más poderosos y seguros en la actualidad. Aquí encontrarás una colección de ejercicios prácticos, explicaciones detalladas y desafíos diseñados para llevarte desde los fundamentos hasta conceptos avanzados.
Aprender Rust de forma progresiva, práctica y entretenida, desarrollando proyectos y resolviendo ejercicios que cubren:
- Conceptos básicos: sintaxis, control de flujo, funciones.
- Propiedad y préstamo (ownership & borrowing).
- Estructuras y enumeraciones.
- Manejo de errores.
- Programación concurrente.
- Trabajo con bibliotecas externas.
- Proyectos avanzados.
- Hola, mundo: Primer programa en Rust.
- Variables y mutabilidad: Declaraciones y mutación de variables.
- Tipos de datos y conversiones.
- Control de flujo:
if
,match
, y loops (for
,while
).
- Ownership: Comprender la propiedad y cómo funciona la memoria en Rust.
- Borrowing: Prestamos mutables e inmutables.
- Slices y referencias.
- Estructuras (
struct
): Modelado de datos. - Enumeraciones (
enum
): Opciones y patrones. - Módulos y organización de código.
Result
yOption
: Manejando errores y valores opcionales.- Propagación de errores con
?
.
- Hilos: Creación y sincronización.
- Canales: Comunicación entre hilos.
async/await
: Programación asincrónica.
- Crear una CLI con
clap
. - Conectar a una API REST con
reqwest
. - Construir un servidor web básico con
warp
oaxum
. - Sistema de archivos: Lectura y escritura de archivos.
-
Instalar Rust:
Sigue las instrucciones oficiales en rustup.rs. -
Familiaridad básica con programación (no es obligatorio, pero ayuda).
-
Clona el repositorio:
git clone https://github.com/tu_usuario/aprendiendo-rust.git cd aprendiendo-rust
-
Explora los niveles:
Cada nivel tiene su propio directorio, por ejemplo:aprendiendo-rust/ ├── nivel_1/ │ ├── hola_mundo/ │ ├── variables_y_mutabilidad/ │ └── ... ├── nivel_2/ │ ├── ownership/ │ └── ...
-
Resuelve los ejercicios:
Lee las instrucciones en los archivosREADME.md
de cada nivel y escribe tu solución. -
Compila y ejecuta:
cd nivel_1/hola_mundo cargo run
Este repositorio está pensado para tu aprendizaje, pero también puedes contribuir si deseas agregar ejercicios, corregir errores o mejorar las explicaciones. ¡Se aceptan pull requests!