Seminarinformationen

Seminar - Ziel

In dieser 3-tägigen Schulung "Rust - GUI-Entwicklung" erwerben Sie umfassende Kenntnisse in der GUI-Entwicklung mit Rust. Zu Beginn des Kurses wird eine Analyse nativer und webbasierten Ansätze durchgeführt, sowie eine kritische Betrachtung des Fehlens eines Standard-GUI-Frameworks in Rust.

Der Kurs umfasst einen detaillierten Vergleich verschiedener Frameworks wie gtk-rs, egui, Iced, relm, Tauri, Leptos und Yew. Der Fokus liegt auf einer gründlichen Bewertung der jeweiligen Vor- und Nachteile sowie der optimalen Einsatzmöglichkeiten jedes Frameworks. Im Zusammenhang mit GTK und Rust als klassischer Lösung erfolgt eine detaillierte Analyse der Vor- und Nachteile, der Bindings, des Event-Loop-Managements, des Memory-Managements, der GObject-Konzepte und der praxisorientierten Umsetzung, insbesondere im Hinblick auf Windows und macOS.

Im Abschnitt "Erstes Projekt mit Iced und Rust" werden moderne, Rust-exklusive Ansätze sowie die Elm-Architektur, Installation und Setup behandelt. Dabei liegt der Fokus auf responsiven Layouts, State-Management und Performance-Optimierung.

Die Schulung endet mit dem Block "Moderne Fullstack-Entwicklung in Rust", in dem Tauri, Leptos und Yew vorgestellt werden. Dabei wird die Entwicklung von GUIs für den Browser thematisiert, die mit Tauri auch auf den Desktop übertragen werden können.

Teilnehmer - Zielgruppe

Software-Entwickler

Kurs - Voraussetzungen

Für eine optimale Teilnahme am Kurs empfehlen wir folgende Vorkenntnisse:

Seminardauer

  • 3 Tage
  • 09:00 Uhr bis 17:00 Uhr

Schulungsunterlagen

  • nach Absprache

Seminar-Inhalt / Agenda

Einleitung

  • Native vs. Web
  • Kein Standard GUI-Framework in Rust?

Frameworks im Vergleich

  • gtk-rs / GTK+ (Graphics Toolkit Bindings)
  • egui (Web and Native GUI in pure Rust)
  • Iced (Cross Plattform GUI Library)
  • relm (ebenfalls GTK basiert)
  • Xilem (“experimenteller Nachfolger” von Druid”)
  • Slint (Kommerzielles GUI Framework mit Community Tier)
  • FLTK
  • Dioxus (Fullstack Crossplattform GUI)
  • Tauri (Webbasierte Desktopanwendungen)
  • Yew (Web GUI)
  • Leptos (Web GUI)
  • Weitere Möglichkeiten (Flutter Rust bridge etc.)

GTK und Rust (Klassische Lösung)

  • Vor- und Nachteile
  • Bindings und Besonderheiten
  • Die Main-Event Loop
  • Memory Management und Performance
  • GObject Konzepte, Signale, Eigenschaften & co
  • Windows State Management
  • Widgets
  • Action Bindings
  • Composite Templates
  • Praxisbeispiele und eine erste Anwendung
  • Einsatz unter Windows und macOS

Ein erstes Projekt mit Iced und Rust (Moderne, Rust-Only Lösung)

  • Vor- und Nachteile
  • Die Elm Architektur (Aufbau und Funktionsweise)
  • Installation und Setup
  • Responsive Layouts, Widgets & Co..
  • State, Messages, View logic, Update logic
  • Performance, Debugging & Co
  • Praxisbeispiele und eine erste Anwendung

Fullstack Rust

  • Vor- und Nachteile
  • Installation und Setup von Yew
  • Responsive Layouts, Widgets & Co..
  • State, Messages, View logic, Update logic
  • Performance, Debugging & Co
  • Praxisbeispiele und eine erste Anwendung

Weitere Schulungen zu Thema Rust

Rust - Einführung

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser 3-tägigen Schulung "Rust - Einführung" erhalten Sie eine fundierte Einführung in die Programmiersprache Rust. Sie lernen die Entstehung, die Philosophie und die einzigartigen Merkmale von Rust im Vergleich zu anderen Programmiersprachen kennen. Der Kurs ...

Rust - Fortgeschrittenenkurs

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser 3-tägigen Schulung "Rust - Fortgeschrittenenkurs" erweitern Sie Ihre Rust-Kenntnisse, mit dem Fokus auf fortgeschrittene Konzepte. Der Kurs bietet praxisorientierte Einblicke in Themen wie asynchrone Funktionen, Ownership, fortgeschrittene Programmierung, ...

Rust für Embedded Systems - Grundlagen bis Sicherheit

- u.a. in Hannover, Stuttgart, Dresden, Erfurt, Nordhausen

In diesem 3-tägigen Seminar "Rust für Embedded Systems - Grundlagen bis Sicherheit" erwerben die essenziellen Fähigkeiten und für die Entwicklung in Rust inetteten Systemen. Von der Einrichtung der Entwicklungsumgebung mit echter Cortex-M Hardware und QEMU bis hin ...

LFD480 Programming in Rust

- u.a. in Wien, Erfurt, Darmstadt, Offenbach, Jena

In dieser 4-tägigen Schulung "LFD480 Programming in Rust" erhalten Sie eine umfassende Einführung in die Rust-Programmiersprache und erweitern Ihr Wissen bis hin zu fortgeschrittenen Konzepten. Der Kurs beginnt mit einer gründlichen Übersicht über Rust und führt ...