ZHAW School of Engineering - Weiterbildung

WBK Rust for Embedded Developers

Ort

auf Anfrage

Start

21.09.2026

Anmeldeschluss

21.08.2026

Dauer

3 Monate

Preis

CHF 2'600.00

Abschluss

Kein Abschluss


Hinweis zum Datenschutz
Rust ist eine systemnahe Programmiersprache mit Fokus auf Sicherheit, Performance und Parallelität, die zunehmend in Industrie und Entwicklung eingesetzt wird. Durch Konzepte wie Ownership, den Verzicht auf Nullzeiger und die Vermeidung von Data Races werden viele typische Programmierfehler bereits zur Compile-Zeit verhindert. Der WBK Rust for Embedded Developers vermittelt die Grundlagen für produktives Arbeiten mit Rust und vertieft relevante Aspekte für Embedded Systems. Ergänzt wird der Kurs durch weiterführende Themen wie rustspezifische Bibliotheken, Continuous Integration sowie praxisnahe Projekte, etwa die Programmierung einer RP2040-basierten LED-Matrix. Zielpublikum:

Dieser Kurs richtet sich an Softwareentwickler, die

  • in den Bereichen Embedded Systems, Systemprogrammierung oder C/C++ arbeiten.
  • mit Sicherheits‐ und/oder Performance‐kritischen Systemen arbeiten.
  • potenzielle Anwendungsfälle für Rust identifiziert haben und die Sprache evaluieren möchten.
Ziele:

Die Teilnehmenden erwerben sowohl theoretische Grundlagen als auch praktische Fähigkeiten in folgenden Bereichen:

  • Zentrale Aspekte der Sprache

  • Grundlagen (Typen, Kontrollfluss, Funktionen) 

  •  Speicherverwaltung (Ownership)

  •  Objektorientierte Programmierung (Polymorphismus, dynamic Dispatch)

  •  Funktionelle Programmierung (algebraische Datenstrukturen, Closures, Iterators

  •  Fortgeschrittene Techniken (Concurrency, asynchrone Programmierung)

Embedded-spezifische Vertiefung 

  • Hardware-nahes Rust 

  • Integration mit existierenden C Programmen 

  • Das Ökosystem embedded-spezifischer Bibliotheken 

  • Relevante Programmiermodelle (blocking, interrupt-driven, async) 

Für Produktivität unerlässliche Nebenaspekte einer Programmiersprache

  •  Projektstruktur & Tooling

  •  Verwendung von Bibliotheken

  •  Continuous Integration 

Inhalt:

Der WBK Rust for Embedded Developers besteht aus 7 Unterrichtseinheiten zu je 6 Lektionen. An den ersten zwei Unterrichtstagen lernen die Teilnehmenden die Grundlagen der Sprache Rust kennen (Language Basics). An den folgenden zwei Unterrichtstagen werden die fortgeschrittenen Möglichkeiten vermittelt, welche Rust als moderne Programmiersprache auszeichnen (Advanced Features). Über die letzten drei Tage werden Embedded-spezifische Themen behandelt und die Abschlussprojekte implementiert. Am letzten Tag wird eine schriftliche Prüfung abgelegt.

Block 1 (6 Lektionen)

Inhalt 

  • Typen
  • Kontrollfluss
  • Funktionen
  • Speicherverwaltung

Lernziele

  • Die Teilnehmenden können einfache Rust-Programme mit universellen Programmierkonstrukten schreiben.
  • Die Teilnehmenden verstehen das Speicherverwaltungssystem von Rust.

Block 2 (6 Lektionen)

Inhalt

  • Algebraische Datentypen
  • Methoden
  • Projektstruktur
  • Fehlerverarbeitung

Lernziele

  • Die Teilnehmenden können idiomatische Datenmodelle entwickeln.
  • Die Teilnehmenden können idiomatische Fehlerverarbeitung anwenden.

Block 3 (6 Lektionen)

Inhalt

  • Lifetimes
  • Closures
  • Iterators

Lernziele

  • Die Teilnehmenden können Polymorphismus anwenden.
  • Die Teilnehmenden können APIs mit anonymen Funktionen verwenden.
  • Die Teilnehmenden verstehen das Konzept einer Lifetime-Annotation.

Block 4 (6 Lektionen)

Inhalt

  • Smart pointers
  • Concurrency
  • Static & dynamic Dispatch
  • asynchrone Programmierung

Lernziele

  • Die Teilnehmenden verstehen sichere Concurrency und kennen die wichtigsten Smart-Pointer.
  • Die Teilnehmenden können dynamic Dispatch anwenden.
  • Die Teilnehmenden verstehen asynchrone Programmierung (async/await).

Block 5 (6 Lektionen)

Inhalt

  • Bibliotheken
  • Dokumentation
  • CI/CD
  • Einstieg in Embedded Rust
  • Projektanfang

Lernziele

  • Die Teilnehmenden können Rust-Bibliotheken finden, evaluieren, verwenden und deren Dokumentation nutzen.
  • Die Teilnehmenden können eine CI/CD-Pipeline für ein Rust-Projekt aufsetzen. 

  • Die Teilnehmenden können einen Mikrokontroller mit Rust programmieren. 

Block 6 (6 Lektionen)

Inhalt

  • Hardware-nahes Rust 

  • C FFI 

  • Weiterarbeit Projekte 

Lernziele

  • Die Teilnehmenden verstehen die Funktion des „unsafe“ Keyword und wie die Risiken dessen Verwendung minimiert werden können. 

  • Die Teilnehmenden können neuen Rust Code mit existierendem C Code integrieren.

Block 7 (6 Lektionen)

Inhalt

  • Schriftliche Prüfung 

  • Projektabschluss 

Lernziele

  • Die Teilnehmenden können ein Embedded Projekt in Rust umsetzen.

Zusammen mit etwa drei Stunden Selbststudium für Vor- und Nachbearbeitung pro Kurstag ergibt sich ein Gesamtaufwand von rund 60 Stunden (2 ECTS).

Kontakt

School of Engineering
Tel... anzeigen
E-Mail Anfrage