Kurs „Ruhe programmieren“

Softwareentwicklung

Die Teilnehmer lernen die Programmiersprache Rust kennen und führen verschiedene praxisorientierte Übungen mit dieser modernen Systemprogrammiersprache durch. Dabei werden die Stärken von Rust beleuchtet, wie beispielsweise Speichersicherheit ohne Garbage Collector, hohe Leistung sowie umfassende Unterstützung für Parallelität und Multithreading. Rust verbindet die Kontrolle von Low-Level-Sprachen mit modernen Sprachkonzepten, wodurch es sich besonders gut für die Entwicklung zuverlässiger und effizienter Software eignet. Rust wird häufig in den Bereichen Systemsoftware, eingebettete Systeme, Webdienste und leistungskritische Anwendungen eingesetzt.

Studiebelasting 3 dagen
Warning: Undefined array key 0 in /var/www/html/wp-content/themes/treesign/templates/parts/content/courses/single/content.php on line 7

Einführung in die Programmierung mit Rust

Zuverlässige, sichere und leistungsstarke Software bildet das Rückgrat moderner IT-Systeme, Dateninfrastrukturen und digitaler Dienste. Die Programmiersprache Rust spielt dabei eine immer wichtigere Rolle als moderne Systemprogrammiersprache, die hohe Leistung mit starken Garantien in Bezug auf Speichersicherheit und Stabilität verbindet. Rust wurde für Situationen entwickelt, in denen Kontrolle, Effizienz und Zuverlässigkeit entscheidend sind, ohne dabei Abstriche bei modernen Programmierprinzipien zu machen.

Mit Rust können Sie Low-Level- und leistungskritische Software entwickeln, ohne in die klassischen Fallstricke von Speicherfehlern, Datenrennen und undefiniertem Verhalten zu tappen. Dies macht Rust besonders wertvoll in Bereichen wie Systemsoftware, eingebetteten Systemen, Netzwerkanwendungen, Webdiensten und datenintensiven Backend-Systemen. Diese Einführung führt dich in die Welt der sicheren und effizienten Softwareentwicklung aus der Perspektive von Rust ein, wobei der Schwerpunkt auf der Rolle liegt, die die Sprache in heutigen Infrastruktur- und Softwarearchitekturen spielt.

Die Beherrschung der Grundlagen von Rust bietet eine robuste und zukunftssichere Programmiergrundlage. Von sicherer Speicherzuweisung und Parallelität bis hin zu skalierbarem und wartbarem Code: Rust verbindet die Leistung traditioneller Systemprogrammiersprachen mit modernen Sprachkonzepten wie „Ownership“, „Borrowing“ und einem leistungsstarken Typsystem. Dadurch können Entwickler komplexe Systeme mit einem hohen Maß an Zuverlässigkeit erstellen.

Vorkenntnisse in Rust sind nicht erforderlich, Kenntnisse in einer Programmiersprache sind jedoch von großem Vorteil. Falls Sie diese noch nicht haben, empfehlen wir den Einführungskurs „Python-Programmierung: Programmieren lernen mit Python“.

Geo-ICT erkennt die wachsende Bedeutung von Rust in der modernen Softwareentwicklung an. Im Kurs „Rust-Programmierung“ stehen Theorie und Praxis im Mittelpunkt. Sie lernen nicht nur, wie die Sprache funktioniert, sondern vor allem, wie Sie Rust effektiv in realistischen und technisch anspruchsvollen Programmierumgebungen einsetzen.

Was ist Rust und warum ist es wichtig?

Rust ist mehr als eine Programmiersprache. Es ist eine Systemprogrammiersprache, die von Grund auf darauf ausgelegt ist, Speichersicherheit und Parallelitätssicherheit ohne den Einsatz eines Garbage Collectors zu gewährleisten. Rust erfüllt damit eine entscheidende Rolle: Es bietet die Leistung und Kontrolle von C und C++, jedoch mit wesentlich stärkeren Garantien gegen Programmierfehler.

Was Rust auszeichnet, ist das einzigartige Eigentumsmodell. Dieses Modell zwingt Entwickler dazu, explizit über Lebensdauer, Eigentumsverhältnisse und gleichzeitigen Zugriff auf Daten nachzudenken. Dadurch werden ganze Klassen von Fehlern – wie Null-Zeiger, „Use-after-free“ und Datenrennen – bereits während der Kompilierung verhindert.

Rust wird zunehmend eingesetzt für:

  • Systemsoftware und Betriebssysteme
  • Embedded- und Echtzeitsysteme
  • Netzwerksoftware und Protokolle
  • Webserver und Backend-Dienste
  • Leistungskritische und sicherheitsrelevante Anwendungen

Darüber hinaus bietet Rust:

  • Starke Garantien für Speicher- und Thread-Sicherheit
  • Leistungsstarke Zero-Cost-Abstraktionen
  • Ein modernes Typsystem mit Musterabgleich und Enums
  • Hervorragende Unterstützung für Parallelität und Multithreading
  • Nahtlose Interoperabilität mit C und anderen Sprachen
  • Ein leistungsstarkes Ökosystem mit Cargo und crates.io

Diese Eigenschaften machen Rust zu einem wichtigen Akteur in der modernen Softwareentwicklung. Durch die Teilnahme am Kurs „Rust-Programmierung“ bei Geo-ICT erhalten Sie Einblicke, wie Sie diese einzigartigen Eigenschaften effektiv in robusten und skalierbaren Softwareprojekten einsetzen können.

Die Rolle von Rust in der heutigen Softwareentwicklung

Rust nimmt in der professionellen Softwareentwicklung einen immer zentraleren Platz ein. Die Sprache wird in großem Umfang in Infrastruktur-Software, Cloud-Umgebungen und leistungskritischen Anwendungen eingesetzt. Große Unternehmen entscheiden sich für Rust aufgrund der Kombination aus Sicherheit, Geschwindigkeit und Wartbarkeit.

Wichtige Merkmale von Rust in der Softwareentwicklung:

  • Speichersicherheit ohne Laufzeit-Overhead
  • Starke Unterstützung für sichere Parallelität
  • Fehlererkennung häufig auftretender Bugs bereits zur Kompilierungszeit
  • Hohe Leistung, vergleichbar mit C und C++
  • Aktives Open-Source-Ökosystem und starke Community

Mit Rust lässt sich der gesamte Entwicklungsprozess unterstützen:

  • Entwurf sicherer Datenstrukturen
  • Erstellung von modularem und wiederverwendbarem Code
  • Entwicklung von CLI-Tools und Diensten
  • Implementierung von Netzwerk- und E/A-Logik
  • Parallele und asynchrone Verarbeitung

Diese Eigenschaften machen Rust besonders geeignet für Fachleute, die an zuverlässiger, skalierbarer und leistungskritischer Software arbeiten.

Was Sie im Kurs „Rust-Programmierung“ lernen

Grundlagen der Rust-Programmierung

Der Kurs beginnt mit einer gründlichen Einführung in Rust und seine Entwicklungsumgebung. Sie lernen:

  • Die Rolle und Positionierung von Rust in der modernen Softwareentwicklung
  • Was Sie von diesem Kurs erwarten können
  • Installation und Nutzung der Rust-Toolchain
  • Arbeiten mit Cargo für Projektmanagement und Abhängigkeiten
  • Das Rust-Ökosystem: Dokumentation, Crates und Community

Anschließend beschäftigen Sie sich mit den Grundlagen der Sprache:

  • Variablen, Mutabilität und das Ownership-Modell
  • Grundlegende Datentypen und zusammengesetzte Typen
  • Kontrollfluss und Musterabgleich
  • Funktionen und Ausdrücke

Eigentumsrechte, Ausleihen und Lebensdauern

Ein zentraler Bestandteil von Rust ist das Eigentumsmodell. In diesem Abschnitt lernst du:

  • Eigentumsverhältnisse und die Übertragung von Daten
  • Ausleihen und veränderbare vs. unveränderbare Referenzen
  • Lebensdauern und ihre Rolle in sicherem Code
  • Wie Rust Speichersicherheit ohne Garbage Collector gewährleistet
  • Dieses Wissen bildet die Grundlage für das Schreiben korrekter und effizienter Rust-Programme.
  • Strukturen, Enums und Traits
  • Rust bietet leistungsstarke Abstraktionsmechanismen:
  • Entwerfen von Strukturen und Enums
  • Musterabgleich mit `match` und `if let`
  • Traits definieren und implementieren
  • Generics und Trait-Bounds
  • Fehlerbehandlung mit `Result` und `Option`
  • Damit lernst du, robuste und ausdrucksstarke Softwarearchitekturen zu erstellen.
  • Code-Organisation, Module und Fehlerbehandlung
  • Du lernst, wie du Rust-Code wartbar und skalierbar organisierst:
  • Module und Crates
  • Sichtbarkeit und Kapselung
  • Fehlerbehandlung und benutzerdefinierte Fehler
  • Testen und Dokumentieren von Code
  • Parallelität und asynchrone Programmierung
  • Rust ist bekannt für sichere Parallelität. In diesem Abschnitt lernst du:
  • Threads und Nachrichtenübermittlung
  • Gemeinsamer Zustand und Synchronisation
  • Asynchrone Programmierung mit async/await
  • Futures und Executors
  • Damit entwickelst du sichere und effiziente parallele Anwendungen.

Warum sollten Sie sich für unseren Kurs „Rust-Programmierung“ entscheiden?

  • Der Kurs richtet sich an Entwickler und technische Fachleute, die Rust für anspruchsvolle Softwareprojekte einsetzen möchten.
  • Warum sollten Sie sich für Geo-ICT entscheiden?
  • Erfahrene Dozenten mit praktischer Erfahrung in Rust
  • Starker Fokus auf praktische Übungen
  • Inhaltlich fundierter und aktueller Kurs
  • Unterstützung während und nach dem Kurs
  • Mit diesem Kurs entwickeln Sie nicht nur technische Rust-Kenntnisse, sondern auch das Verständnis, Rust effektiv in modernen Softwarearchitekturen einzusetzen. Damit sind Sie optimal auf zuverlässige, sichere und leistungskritische Softwareherausforderungen von heute und morgen vorbereitet.
Meer lezen

Inschrijven

€1695,-
  • Studiebelasting: 3 Unterrichtstag(e) von 9.00 bis 16.00 Uhr.
  • Locatie: Apeldoorn oder online. Ein Termin vor Ort ist möglich; fordern Sie in diesem Fall bitte ein Angebot an.
  • Data: Es gibt mehrere Starttermine; weitere Informationen finden Sie auf der Anmeldeseite.
Inschrijven voor deze cursus

Tagesablauf des Kurses „Ruhe programmieren“

Tag 1 – Einführung in Rust und die Grundlagen sicherer Software

Der erste Tag steht ganz im Zeichen der Einführung in Rust und der Grundlagen der Sprache. Die Kursteilnehmer erhalten einen Einblick in die Stellung von Rust innerhalb der modernen Softwareentwicklung und verstehen, warum sich Rust grundlegend von traditionellen Programmiersprachen wie C++ oder Java unterscheidet.

Zunächst wird die Entwicklungsumgebung eingerichtet und die Arbeit mit der Rust-Toolchain und Cargo erlernt. Die Teilnehmer lernen, wie Rust-Projekte aufgebaut sind und wie Abhängigkeiten verwaltet werden. Anschließend lernen sie die Grundstruktur eines Rust-Programms, Variablen, Mutabilität, grundlegende Datentypen und den Kontrollfluss kennen.

Ein wichtiger Bestandteil dieses Tages ist die Einführung in das Ownership-Modell. Anhand einfacher Beispiele lernen die Teilnehmer, wie Rust mit dem Eigentumsrecht an Daten umgeht und warum dies für die Speichersicherheit entscheidend ist. Der Tag endet mit praktischen Übungen, in denen die Teilnehmer selbst einfache Rust-Programme schreiben und lernen, Kompilierungsfehler zu interpretieren.

Tag 2 – Eigenverantwortung, Datenstrukturen und robuster Code

Am zweiten Tag werden die Kernkonzepte von Rust, die die Sprache so leistungsstark machen, näher beleuchtet. Ownership, Borrowing und Lifetimes werden weiter vertieft, wobei der Schwerpunkt auf dem Schreiben korrekten und effizienten Codes liegt. Die Kursteilnehmer lernen, wie sie Referenzen verwenden und wie der Compiler dabei hilft, Speicherfehler zu vermeiden.

Darüber hinaus werden zusammengesetzte Datenstrukturen ausführlich behandelt. Die Teilnehmer arbeiten mit „structs“ und „enums“ und lernen, wie Pattern Matching eingesetzt wird, um Code übersichtlich und ausdrucksstark zu gestalten. Auch „traits“ und „generics“ werden vorgestellt, mit denen wiederverwendbare und flexible Softwarekomponenten entworfen werden können.

Die Fehlerbehandlung ist ein wichtiger Bestandteil dieses Tages. Die Teilnehmer lernen den Umgang mit Result und Option und verstehen den Unterschied zwischen behebbaren und nicht behebbaren Fehlern. Anhand von praktischen Aufgaben wenden sie diese Konzepte in realistischen Code-Beispielen an. Der Tag endet mit einem Schwerpunkt auf Code-Organisation, Modulen und der Strukturierung größerer Rust-Projekte.

Tag 3 – Parallelität, asynchrone Programmierung und praktische Anwendung

Am dritten Tag stehen fortgeschrittenere Anwendungen von Rust sowie der effektive Einsatz der Sprache in realistischen Szenarien im Mittelpunkt. Die Teilnehmer lernen sichere Parallelität kennen und erfahren, wie Rust Datenkonflikte und Parallelitätsprobleme verhindert. Es werden die Verwendung von Threads, Message Passing und gemeinsamem Zustand sowie die asynchrone Programmierung mit async und await. Die Teilnehmer erhalten Einblicke, wie Rust skalierbare und effiziente Anwendungen ermöglicht, ohne dabei Kompromisse bei der Sicherheit einzugehen.

Der letzte Teil des Kurses steht im Zeichen der Integration und Anwendung. Die Kursteilnehmer arbeiten an einer kleinen praktischen Aufgabe, in der verschiedene Aspekte des Kurses zusammenkommen, wie beispielsweise Datenstrukturen, Fehlerbehandlung und Parallelität. Darüber hinaus werden das Testen, die Dokumentation und Best Practices innerhalb des Rust-Ökosystems behandelt.

Der Kurs endet mit einer Reflexion über den Einsatz von Rust in der Praxis und Anregungen zur weiteren Vertiefung, damit die Teilnehmer anschließend selbstständig an der Entwicklung zuverlässiger und leistungsfähiger Rust-Software weiterarbeiten können.

Studiebelasting 3 dagen
Schrijf me in

Lernziele: Programmieren in Rust

Der Kursteilnehmer:

  • versteht die Kernprinzipien von Rust, darunter Ownership, Borrowing und Lifetimes, und kann diese korrekt anwenden, um speichersichere und zuverlässige Software zu schreiben.
  • Kann Rust-Programme unter Verwendung von Structs, Enums, Traits und Generics entwerfen und implementieren und weiß, wie man diese in modulare und wartbare Codebasen strukturiert.
  • Er kann Fehler und Ausnahmen auf robuste Weise mit Result und Optionund wendet Test- und Debugging-Techniken an, um die Qualität von Rust-Code sicherzustellen.
  • Kann sichere und effiziente parallele und asynchrone Rust-Anwendungen entwickeln und versteht, wie Rust Datenkonflikte und andere Parallelitätsprobleme verhindert.
Warning: Undefined array key 0 in /var/www/html/wp-content/themes/treesign/templates/parts/content/courses/single/info.php on line 1

Möchten Sie weitere Informationen?

Haben Sie Fragen zum Inhalt des Kurses? Oder sind Sie sich nicht sicher, ob der Kurs Ihren Lernzielen oder Wünschen entspricht? Bevorzugen Sie einen Inhouse- oder einen Privatkurs? Wir helfen Ihnen gerne weiter.

Andere cursussen

C#-Programmierung

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen
4.6

C++-Programmierung

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen
4

Cursor-Programmierung

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen

Delphi-Programmierung

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen
4

Github

Softwareentwicklung
  • Gecertificeerd
  • 1 dag

Go programmieren

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen

JAVA-Programmierung

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen

JavaScript-Programmierung

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen

Julia programmieren

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen

PL-SQL-Programmierung

Softwareentwicklung
  • Gecertificeerd
  • 3 dagen

Python-Grundlagen

Python-Programmierung
  • Gecertificeerd
  • 3 dagen