Rullst AcademyRullst Academy/Lección
Rust II: datos, decisiones y confianza · Lección 10 / 12

Módulos y límites

El taller crece. Separar las reglas de existencias de la presentación facilita cambiar una sin extender detalles de la otra.

Rutas de aprendizaje10 min

Vamos a descubrir juntos

  1. 1

    mod inventory { ... } crea un módulo dentro del archivo. Los elementos internos son privados por defecto para quien está fuera. pub hace accesible una función mediante la ruta del módulo.

  2. 2

    use inventory::capacity permite escribir capacity() en vez de la ruta completa. use no copia código ni instala paquetes. std es la biblioteca estándar incluida con Rust.

  3. 3

    Una struct pública puede mantener campos privados. Exponer métodos que validan cambios protege mejor las reglas que permitir asignaciones externas libres. La privacidad del módulo organiza código; no autentica usuarios.

  4. 4

    Para separar archivos después, mod inventory; en main.rs busca inventory.rs o inventory/mod.rs. Esta ruta usa un módulo interno para que el archivo de código publicado siga completo.

DE LA LECCIÓN A LA PRÁCTICA

Una guía para seguir a tu ritmo

Lee los pasos antes de usar la referencia de abajo. Los comandos se ejecutan en el terminal del sistema indicado; el registro ocurre en el sitio oficial. Los ejercicios de Rullst Academy son práctica y no verifican tu instalación ni cuenta externa.

mod inventory { pub fn capacity() -> u16 { 20 } }
use inventory::capacity;
fn main() { println!("{}", capacity()); }

Enlaces oficiales y siguiente paso

✦
TU MISIÓN

Usar mod, pub y use para diseñar una API pequeña.

Ahora te toca

Taller de descubrimientos

Lee, predice, investiga

Predice antes de mostrar. Este panel revela resultados preparados; no compila tu código. Los errores se resumen; el texto exacto puede variar con la versión del compilador.
Mini experimento

Simulación didáctica: compara tarjetas y comprueba tus predicciones. El navegador no compila Rust ni inicia un servidor.

mod inventory { pub fn capacity() -> u16 { 20 } }
use inventory::capacity;
fn main() { println!("{}", capacity()); }
Prepara tus respuestas y comprueba cuando estés listo.
Una pausa para entender

¿Qué hace use?

Necesito una pista

Importar un nombre e instalar una dependencia son cosas distintas.

Cargando tu camino…

Llévatelo contigo

Mueve el módulo válido a src/inventory.rs, sustituye el bloque por mod inventory; y ejecuta cargo check. Registra en README que ahora hacen falta ambos archivos al compartir.

RUST II · .rs

Tu espacio de práctica Rust II

Lee, predice y responde aquí. Para compilar realmente, extrae el ZIP en una carpeta nueva, abre la terminal junto a Cargo.toml y usa estos comandos. Debes tener instalados Rust y las herramientas de tu sistema.

cargo check --offline
cargo test --offline
cargo run --offline
Mis archivos y GitHub

El editor guarda un borrador en este navegador y permite descargar o publicar tu .rs. Para ejecutarlo en el proyecto, guarda el archivo editado como src/main.rs. El ZIP contiene la versión inicial; los resultados preparados no cambian con tus ediciones. La evaluación online no verifica ejecución local.

A tu ritmo

Mis archivos y GitHub

Cada lección puede convertirse en un registro propio: código, notas o un plan de práctica. Guardar un archivo en GitHub es opcional y no cambia tus XP.

Manual del alumno

El editor y las descargas se abren cuando esta lección esté disponible para tu cuenta. Revisa el acceso indicado abajo o vuelve al mapa de la ruta.

Comprobando tu acceso a esta lección…

Rullstpetbot

La IA puede equivocarse. Consulta el material de la lección.