Aprender Rust Módulos y crates

Módulo del curso de Rust

Rust
Rust
Módulo del curso
Actualizado: 18/04/2026

Módulo: Módulos y crates

Este módulo forma parte del curso de Rust. .

Rust organiza el código en tres niveles jerárquicos: packages (proyectos Cargo con uno o más crates), crates (unidades de compilación, binarias o de biblioteca) y módulos (bloques de organización dentro de un crate que controlan el alcance y la privacidad).

Módulos con mod

La palabra clave mod define un módulo. Los módulos pueden anidarse y dividirse en archivos separados. Por defecto, todos los elementos de un módulo son privados: la palabra clave pub los hace accesibles desde fuera.

Visibilidad refinada

Rust ofrece control granular sobre la visibilidad: pub (accesible desde cualquier lugar), pub(crate) (solo dentro del mismo crate) y pub(super) (solo para el módulo padre). Los campos de una struct pública son privados por defecto a menos que se marquen con pub individualmente.

Rutas y use

Para acceder a elementos de otros módulos se usan rutas absolutas (crate::modulo::elemento) o relativas (super::elemento). La palabra clave use crea atajos locales para evitar escribir rutas completas repetidamente. pub use re-exporta elementos para simplificar la API pública de un módulo.

Cargo.toml y dependencias externas

El archivo Cargo.toml declara metadatos y dependencias. Con cargo add se añaden crates de crates.io. Los features de una crate permiten activar funcionalidad opcional:

[dependencies]
serde = { version = "1.0", features = ["derive"] }
tokio = { version = "1", features = ["full"] }

Workspaces

Un workspace agrupa múltiples crates relacionados en un mismo repositorio, compartiendo un directorio de caché de compilación y permitiendo gestionarlos con un único cargo build o cargo test en la raíz.

Explora más sobre Rust

Descubre más recursos de Rust

Alan Sastre - Autor del curso

Alan Sastre

Ingeniero de Software y formador, CEO en CertiDevs

Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, Rust es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.