¿Para qué sirve el archivo mod.rs en Rust? Explica con un ejemplo
¡Hola! Acabo de empezar a aprender Rust y estoy tratando de entender la organización del código. Noté que en muchos proyectos de Rust hay carpetas que contienen un archivo mod.rs. Por ejemplo, vi esta estructura:
```
src/
main.rs
utils/
mod.rs
helpers.rs
```
Intenté simplemente crear una carpeta y poner archivos con funciones, pero el compilador se queja si no hay mod.rs. Sin embargo, leí que en versiones nuevas de Rust se puede usar algo diferente.
Por favor, explícame:
1. ¿Para qué sirve mod.rs?
2. ¿Qué hace?
3. ¿Cómo declarar módulos correctamente?
4. ¿Hay alternativas en Rust moderno?
Aquí hay un ejemplo de mi código que no funciona:
```rust
// main.rs
mod utils; // error: no puedo encontrar el módulo
fn main() {
utils::say_hello();
}
```
En la carpeta utils hay un archivo helpers.rs con la función say_hello(). Pensé que Rust encontraría los archivos en la carpeta automáticamente, pero no. Explica, por favor, cómo organizar módulos correctamente y para qué sirve mod.rs.