17.6 Summary

Rust extends well beyond simple source splitting by introducing packages, crates, and modules. At a glance:

  • Packages: High-level collections that Cargo manages and distributes.
  • Crates: Independent compilation units, either libraries or executables.
  • Modules: Namespaced subdivisions within a single crate, controlling visibility and organization.

Although it may feel elaborate compared to traditional C header/source splitting, Rust’s approach scales cleanly for large teams and codebases. Properly leveraging these constructs leads to projects that are easier to navigate, extend, and maintain.