Rust Einführung

Programmieren von stabiler, sicherer und effizienter Software

Individual-Schulung
Rust

Rust ist eine Programmiersprache, die jeden ermächtigt verlässliche und effiziente Software zu erstellen. So lautet der Slogan auf der Website der Rust Programmiersprache. Rust punktet mit seinem starken Typsystem und zwingt die Entwickler, sich mit allen Möglichkeiten und Ausnahmen bereits beim Programmieren auseinander zu setzen. Das bewirkt, dass viele Fehler und Bugs, die in anderen Programmiersprachen zur Laufzeit auftreten, schon beim kompilieren erkannt werden. In den letzten Monaten und Jahren erfreut sich Rust unter anderem deswegen großer Beliebtheit. Rust Anwendungen können so gebaut werden, dass sie stabil laufen, nicht abstürzen und dabei sehr wenig Speicher- und Rechenleistung benötigen.

Die Kehrseite der Medallie ist, dass die Lernkurve von Rust steiler ist als die von vielen anderen Programmiersprachen. Doch die Mühe zahlt sich aus, denn mit Rust lassen sich eine breite Auswahl von Anwendungen programmieren: Webapplikationen, API-Backends, Kommandozeilenprogramme, Embedded (Mikrocontroller), Desktopanwendungen, AWS-Lambdafunktionen bis hin zu Linux und Android Kernelmodulen. Dabei lassen sich Rust Programme gut in bestehende Software integrieren, sodass die Software nicht komplett neu geschrieben werden muss, um von den Vorteilen von Rust zu profitieren.

In dieser mehrtägigen Schulung lernen Sie ihre ersten Programme in Rust zu schreiben und legen die Grundlagen, selbstständig eigene Rust Projekte erfolgreich durchzuführen.

Voraussetzungen

Die Schulung richtet sich an Entwickler mit Kenntnissen in einer oder mehreren anderen Programmiersprachen. Kenntnisse in Rust sind nicht notwendig.

Agenda

  1. Tooling
    • Rustup
    • Cargo
    • crates.io
    • Rustdoc
  2. Documentation
    • Comments
    • Doc Comments
    • Tests in Doc Comments
    • Generierung von Dokumentation
    • Navigation der Dokumentation
  3. Logging
    • Grundlagen
    • Verschiedene Crates die Logging vereinfachen und anpassen
  4. Speicherverwaltung
    • Stack / Heap Memory
  5. Datentypen
    • Elementare Datentypen (i32, u32, ...)
    • String, str und char
    • Structs
    • Enums
    • Funktionen und closures
  6. Ownership
    • Copy / Clone
    • Borrow Checker
    • Lifetimes
    • references
  7. Fehlermanagement
    • Option
    • Result
    • Match
    • ? Ooperator
    • Panic, expect & unwrap
  8. Control Flow
    • If
    • While
    • For
  9. Tests
  10. Collections und Iterators
    • Vec, array, tuple
    • HashMap
    • Iterators und ihre Benutzung
  11. Code Organisation
    • Library & Binary Crates
    • Sichtbarkeit (pub)
    • Modules
  12. Traits & Generics

Impressum

Screenion GmbH

Büroanschrift:
Adenauerallee 21, 1. OG
61440 Oberursel

Rechnungsanschrift und Firmensitz:
Oberhöchstadter Straße 70a
61440 Oberursel
Deutschland

Fon: +49 (0)6171 9519800
Fax: 06171-9519808
post@screenion.de
Web: https://www.screenion.de

Geschäftsführer: Reto M. Kiefer
Amtsgericht: Bad Homburg HRB 13769
UmSt-Id gemäß §27a Umsatzsteuergesetz: DE273300425

Datenschutz

Mit Ihrem Zugriff auf unsere Website werden Daten, die eine Identifizierung ermöglichen könnten (z.B. IP-Adresse) und weitere Angaben wie Datum, Uhrzeit und aufgerufene Seite In Log-Files gespeichert.

Eine Auswertung der Daten, außer für statistische Zwecke sowie zur Optimierung unseres Internetangebots in anonymisierter Form, findet nicht statt. Sie können unsere Website grundsätzlich ohne Offenlegung Ihrer Identität nutzen.

Des Weiteren verwenden wir keine Cookies oder ähnliche Technologien. Sicher haben Sie schon den Hinweis vermisst :)


Wir verwenden Fotos von unsplash sowie pixabay und danken: