FB6 Mathematik/Informatik/Physik

Institut für Informatik


Navigation und Suche der Universität Osnabrück


Hauptinhalt

Topinformationen

Programmieren in Rust

6.622

Dozenten

Beschreibung

Rust ist eine moderne und sichere Systemprogrammiersprache, die von Mozilla gesponsert wird. Ohne Nutzung eines Garbage Collectors verhindert der Rust-Compiler kritische Speicherfehler, wie man sie aus beispielsweise C kennt, und macht Sicherheitslücken, wie den Heartbleed-Bug, unmöglich. Dasselbe System unterbindet jedoch auch Race Conditions, die in anderen Sprachen bei der Nutzung mehrerer Threads auftreten können.


Da dies komplett zur Kompilierzeit sichergestellt wird, gibt es keinen Geschwindigkeitsverlust zur Laufzeit. Rust vereint somit extreme Geschwindigkeit (vergleichbar mit C++ und C) und Speichersicherheit - zwei Features, die bisher noch keine andere Programmiersprache vereint hat. Doch Rust borgt sich Ideen nicht nur aus der Systemprogrammierung, sondern auch von modernen Sprachen (wie Ruby) und mathematisch sauber definierten Sprachen (wie Haskell). Entsprechend lassen sich die meisten Programme sehr elegant und kompakt formulieren.

In dieser Veranstaltung lernen die Teilnehmer die Programmiersprache Rust intensiv von Grund auf und vertiefen das Gelernte anhand diverser Programmieraufgaben. Um jedoch Rust in allen Bereichen meistern zu können, werden in dieser Veranstaltung noch folgende Inhalte behandelt:

- Systemprogrammierung: Speicherlayout, Pointer, Heap vs. Stack, ...
- Theoretische Aspekte: Algebraische Datentypen, ...
- Geschwindigkeitsoptimierung: Speicherhierarchie, Compiler-Optimierungen, ...
- Git und GitHub

Es gibt wöchentliche Übungszettel mit Programmieraufgaben, deren Bearbeitung zum Bestehen des Kurses notwendig sind. Übungsaufgaben werden in Zweierteam gelöst; n-1 Zettel müssen mit mindestens 50% bestanden werden.

Weitere Informationen: https://github.com/LukasKalbertodt/programmieren-in-rust

Weitere Angaben

Ort: 93/E07: Mo. 14:00 - 16:00 (14x) Mi. 10:00 - 12:00 (14x), 93/E33: Freitag, 17.02.2017 09:00 - 13:00
Zeiten: Mo. 14:00 - 16:00 (wöchentlich), Ort: 93/E07, Mi. 10:00 - 12:00 (wöchentlich), Ort: 93/E07, Termine am Freitag, 17.02.2017 09:00 - 13:00, Ort: 93/E33
Erster Termin: Montag, 24.10.2016 14:00 - 16:00, Ort: 93/E07
Veranstaltungsart: Vorlesung und Seminar (Offizielle Lehrveranstaltungen)

Studienbereiche

  • Informatik > Bachelor Informatik
  • Informatik > Master Lehramt an berufsbildenden Schulen mit den beruflichen Fachrichtungen Elektrotechnik und Metalltechnik
  • Informatik > Vorlesungen
  • Informatik > Zwei-Fächer-Bachelor