Rust ist eine systemnahe Sprache mit der Sicherheit einer Hochsprache — kompiliert, statisch typisiert, ohne Garbage Collector und mit einem Compiler, der zur Bauzeit garantiert, dass dein Programm keinen klassischen Memory-Bug enthält. Die Grundlagen-Kapitel führen dich von der Frage „Was ist Rust überhaupt?" bis zu deinem ersten lauffähigen Cargo-Projekt, ordnen die Editionen 2015/2018/2021/2024 ein und zeigen, wie du rustc-Fehlermeldungen liest — die wichtigste Fertigkeit überhaupt, um in Rust produktiv zu werden.
Worum geht es in diesem Kapitel?
Bevor du Ownership, Lifetimes oder Traits verstehst, musst du wissen, was Rust eigentlich ist, wie die Toolchain zusammenspielt und wie du ein Projekt strukturierst. Dieses Kapitel klärt diese Fragen und gibt dir den Werkzeugkasten, mit dem du im Rest der Doku jedes Konzept selbst nachbauen, ausprobieren und debuggen kannst.
Die Reihenfolge ist bewusst gewählt: erst die Sprache als Idee, dann die Installation, dann das erste lauffähige Programm, dann Cargo als zentrales Werkzeug, dann die Projektstruktur, dann die Editionen und zum Abschluss das wahrscheinlich wichtigste Meta-Thema: wie liest man rustc-Fehlermeldungen.
Artikel in diesem Kapitel
- Was ist Rust? — Sprache, Toolchain und Designphilosophie. Memory Safety ohne Garbage Collector, Ownership-Modell, Zero-Cost-Abstractions, Ökosystem und Einsatzgebiete. Abgegrenzt zu C, C++, Go und TypeScript.
- Installation mit rustup (folgt) —
rustupals Toolchain-Manager, Installation auf macOS, Linux und Windows, stable/beta/nightly,rustup update,rustup default, Komponenten wierust-analyzer,clippy,rustfmt,miri. - Erstes Programm (folgt) — Hallo Welt ohne Cargo, dann mit Cargo,
rustcdirekt aufrufen,cargo runvs.cargo build, Debug- vs. Release-Build. - Cargo-Grundlagen (folgt) —
Cargo.toml,Cargo.lock,cargo new,cargo init,cargo add,cargo run,cargo build,cargo check,cargo test,cargo doc, Crate-Registry crates.io. - Projektstruktur (folgt) —
src/main.rs,src/lib.rs, Module-Bäume,mod,use, Binary- vs. Library-Crate, Tests- und Beispiel-Ordner, Workspaces. - Editionen 2015/2018/2021/2024 (folgt) — Was eine Edition ist (kein Versions-Sprung der Sprache), welche Änderungen die jeweiligen Editionen brachten,
edition-Feld inCargo.toml,cargo fix --edition. - Compiler und Fehlerlesen (folgt) — Aufbau einer rustc-Fehlermeldung, Error-Codes (
E0382,E0502, ...),cargo clippyals Lehrmittel,cargo expandzum Verstehen von Makros.
Was du nach diesem Kapitel kannst
- Ein neues Rust-Projekt mit
cargo newanlegen, kompilieren und ausführen. - Den Unterschied zwischen Binary- und Library-Crate erklären.
- rustup-Toolchains wechseln und Komponenten installieren.
- Eine rustc-Fehlermeldung Zeile für Zeile lesen und die
note/help/suggestion-Hinweise gezielt nutzen. - Eine Edition gezielt setzen und ein Projekt mit
cargo fix --editionmigrieren.
Im nächsten Kapitel geht es um Variablen, Bindungen, Mutability und Shadowing — die ersten Konzepte, in denen Rust deutlich anders denkt als die meisten anderen Sprachen.
Weiterführende Ressourcen
Externe Quellen
- The Rust Programming Language (offizielles Buch)
- Rust by Example
- Rust Reference
- rustup.rs – Toolchain-Manager
- The Cargo Book