Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

PART 2 - Core Rust Foundations

Part Opener

Core Rust Foundations

Not baby Rust. This part builds every surface you will use daily — variables, types, functions, ownership, borrowing, structs, enums, error handling, and module architecture — so that the deep chapters feel like deepening, not contradiction.

Variables & Types Ownership & Borrowing Enums & Errors Modules
Concept Map

Part 2 Chapter Prerequisites

Ch 4-5: Tooling Ch 6-9: Vars / Types / Ctrl Ch 10: Ownership Ch 11: Borrowing Ch 12-13: Data Shape Ch 14: Option / Result Ch 15: Modules / Vis Part 3
Big Picture

A Blueprint of Rust's Everyday Building Blocks

Architecture Safety Model Data Shapes Fundamentals Modules & Visibility Error Philosophy Ownership Borrowing Structs & Enums Option & Result Vars & Mutability Types & Functions

Part 2 is not “baby Rust.”

It is where a professional programmer learns Rust’s surface area correctly the first time, before bad habits harden. The point is not to memorize syntax tables. The point is to understand what the everyday tools of the language are preparing you for:

  • explicit ownership
  • visible mutability
  • expression-oriented control flow
  • type-driven absence and failure
  • module boundaries that are architectural, not cosmetic

Everything here is foundational. If you read it carelessly, later chapters feel harder than they are. If you read it with the right mental model, later chapters feel like deepening, not contradiction.


Chapters in This Part


Part 2 Summary

Part 2 is where Rust’s everyday surface becomes coherent:

  • tooling makes workflow disciplined
  • Cargo makes build and dependency structure explicit
  • mutability is visible, not ambient
  • types carry real meaning
  • functions and control flow are expression-oriented
  • ownership and borrowing begin as responsibility and access
  • slices generalize borrowed views
  • structs and enums shape data clearly
  • Option and Result make absence and failure explicit
  • modules and visibility make boundaries intentional

This is the foundation the rest of the handbook keeps building on. Not because these are “basic features,” but because they are the everyday faces of Rust’s deeper design.