*Wir passen den Kursaufbau und die Inhalte an Ihre spezifischen Anforderungen und relevanten Anwendungsfälle an.
Modul 1: Toolchain Setup und Projektanatomie
- Installation mit rustup, Toolchains verwalten und Targets wählen
- Cargo Befehle, Workspaces, Features und Profile
- Projektaufbau mit Modulen, Crates und Sichtbarkeit
- Bauen, Testen und Dokumentieren über die CLI
Modul 2: Ownership Denkweise
- Moves, Copies und Drops und ihre Bedeutung für Ressourcen
- Referenzen und Borrowing Regeln mutabel, geteilt und Aliasing
- Lifetimes an Beispielen wann der Compiler Hinweise braucht
- Slices, Strings und UTF 8 Sicherheit im Systemkontext
Modul 3: Kernsyntax und Steuerfluss
- Typen, Pattern Matching und Ausdrücke mit Rückgabewert
- Funktionen, Generics und Trait Bounds als Verträge
- Fehlerbehandlung mit Result und Option und Weiterreichen mit ?
- Panic Strategien Unwind vs Abort und Wahl pro Binary
Modul 4: Datenmodellierung für Low Level Arbeit
- Structs für Layout und Invarianten Newtype und Builder Stile
- Enums für Zustandsmaschinen und fehlbare Operationen
- Pattern Matching für Zustandsübergänge
- Minimaler CLI Aufbau mit strukturierten Fehlern
Modul 5: Speichermanagement ohne GC
- Stack vs Heap in der Praxis
- Box, Rc, Arc und passende Einsatzszenarien
- Raw Pointer, Referenzen und Alignment Grundlagen
- Unsafe Blöcke als schmale, gut dokumentierte Inseln
Modul 6: System IO und Ressourcen
- Dateien lesen und schreiben mit std und gepuffertem IO
- Arbeiten mit Pfaden, Prozessen und Umgebung
- Zeit, Timer und Umgang mit OS Fehlern
- RAII Muster für Handle Management und Cleanup
Modul 7: Nebenläufigkeit und Synchronisation
- Threads und Message Passing mit Channels
- Gemeinsamer Zustand mit Mutex, RwLock und Condvar
- Send und Sync Marker Traits und ihre Bedeutung
- Leitlinien gegen Deadlocks und Priority Inversion
Modul 8: Schnittstelle zu C
- FFI Bausteine repr, extern Blöcke und Linking
- Strings, Slices und Ownership über die Grenze geben
- Unsafe Pointer mit sicheren Abstraktionen umhüllen
- Header First Workflow bindgen und manuelle Bindings
Modul 9: Debugging und Troubleshooting
- Lesbare Fehler, Backtraces und Logging mit Env Filtern
- Cargo Tools nutzen test, fmt, clippy und audit
- Debugging mit lldb oder gdb Grundlagen
- Häufige Stolpersteine Borrow Checker, Lifetimes und Trait Bounds
Modul 10: Performance und Allokationsbewusstsein
- Messen mit cargo bench und einfachen Timern
- Inlining, Monomorphisierung und Trait Objects verstehen
- Allokationen und Kopien reduzieren Small Vector und Cow Muster
- Datei und Netzwerk IO Strategien Blocking vs Async im Überblick
Modul 11: Kleinen Systemdienst aufbauen
- Entwurf eines Mini Daemons oder CLI im Subcommand Stil
- Konfiguration, Argumente und Feature Flags
- Sauberes Beenden und Signalverarbeitung
- Fehlertaxonomie für stabile Betriebsführung
Modul 12: Packaging und nächste Schritte
- Release Profile und Symbolwahl
- Cross Compilation Targets und musl Builds
- Safe Unsafe Boundary organisieren Checkliste
- Wege zu Async, Embedded und erweiterter Interop