Schulungsübersicht
Einführung
- Was ist Rust?
- Rust im Vergleich zu anderen Programmiersprachen
- Überblick über die Merkmale und Architektur von Rust
Rust verstehen
- Der Lebenszyklus eines Rust-Programms
- Funktionsweise von Rust auf Systemebene
- Speichersicherheit und Eigentumsregelungen in Rust
Einstieg in die Arbeit mit Rust
- Einrichtung der Entwicklungsumgebung
- Installation des Rust-Toolchains als Programmierwerkzeug
- Konfiguration der Rust-Umgebung
- Arbeiten mit dem Paketmanager Cargo
Grundlegende Syntax und Konzepte
- Variablen sowie Datentypen in Rust
- Steuerungsfluss und Schleifen
- Funktionen und Module
- Eigentumsregelungen und die Nutzung von Referenzen in Rust
Fehlerbehandlung und Panic-Mechanismen
- Fehlerverwaltung mithilfe der Typen Result und Option
- Ablauf bei einer Panic: Unwinding versus Abbruch des Programms
- Eigene Fehlertypen sowie Strategien zur Fehlerbehandlung
Speicherverwaltung in Rust
- Unterschiede zwischen Stack- und Heap-Speicherverwaltung
- Zeiger und Referenzen in Rust
- Verwaltung des Speichers mithilfe von Box sowie unsafe-Blöcken
Strukturen und Enums in der Systemprogrammierung
- Definition und Nutzung von Strukturen
- Erstellen und Anwendung von Enum-Typen
- Musterabgleich (Pattern Matching) in Rust
Interaktion mit C sowie Code auf niedriger Ebene
- Zusammenarbeit zwischen Rust und C- bzw. C++-Code
- Nutzung der FFI (Foreign Function Interface)
- Arbeiten mit Raw-Pointern sowie unsicherem Code
Konkurrenz und Synchronisation
- Modellkonzepte zur Konkurrenz in der Systemprogrammierung
- Einsatz von Mutex, RwLock sowie Condvar zur Synchronisation
- Kommunikation per Channels und Nachrichtenaustausch
Debugging und Fehleranalyse bei Rust-Programmen
- Hilfsmittel sowie Techniken zum Debuggen von Rust-Anwendungen
- Profiling und Leistungsanalysen
- Ermittlung gängiger Probleme in der Systemprogrammierung
Zusammenfassung und nächste Schritte
Voraussetzungen
- Grundlegendes Verständnis von Programmierkonzepten
- Erfahrung mit mindestens einer Programmiersprache (beispielsweise C oder C++)
Zielgruppe
- Entwickler
Erfahrungsberichte (2)
Sehr gute Themenstruktur, perfekte Präsentation, sehr hohes Niveau der Trainerkenntnisse. Einwandfreie Infrastruktur.
Tibor Pozsgai
Kurs - Rust Advanced
Maschinelle Übersetzung
Solide Einführung in Rust mit fortgeschrittenen Elementen wie Makros. Praktische Programmieraufgaben, viele Nebenbemerkungen, freie Diskussion und Beratung.
Robert - Sonova Warsaw Service Center Sp z o o
Kurs - Rust Programming
Maschinelle Übersetzung