Course page „Programmieren in Rust“, University Osnabrück (German!)
Go to file
2021-01-23 12:25:24 +01:00
aufgaben Add solution for sheet12 2017-02-16 15:34:22 +01:00
materialien Add ferris on blackboard 2017-01-30 20:30:59 +01:00
slides Fix syntax highlighting 2017-02-14 00:41:13 +01:00
.gitignore Ignore target/ folders 2016-12-05 17:57:54 +01:00
AuswertungEvaluation.pdf Removed more Calibri... 2017-04-03 10:59:10 +02:00
LICENSE-APACHE License slides and code in this repository 2017-06-10 13:08:43 +02:00
LICENSE-MIT License slides and code in this repository 2017-06-10 13:08:43 +02:00
projects.md Fix rendering of projects.md 2017-05-06 19:38:07 +02:00
README.md Add note about state of the lecture contents 2021-01-23 12:25:24 +01:00

Vorlesung „Programmieren in Rust“

Deutsche Vorlesung über Rust an der Universität Osnabrück, Wintersemester 2016/17. In diesem Repository werden Slides und andere Materialien zur Vorlesung gesammelt. Die Ergebnisse der Evaluation der Veranstaltung durch die Studenten sind hier einzusehen.

Hinweis: Inzwischen sind die Inhalte in diesem Repository leider etwas veraltet. Die Vorlesung und Aufgaben können immer noch gut genutzt werden, um Rust zu lernen und zu verstehen, allerdings wird nicht überall der modernste Rust Code gezeigt. Themen wie async, Edition 2018 und proc-macros werden leider gar nicht behandelt. Dieses Repository sollte also nicht als alleinige Quelle zum Rust-Lernen genutzt werden. Leider werde ich auch die Folien nicht mehr aktualisieren, da dies zu viel Aufwand für recht wenig Nutzen ist.

Abschlussprojekte

Eine Liste aller Abschlussprojekte befindet sich hier (Englisch).

Vorlesungsaufzeichnungen

Die Aufzeichnungen gibt es oft in zwei Versionen:

  • nur das Beamerbild, aber in hoher 1080p-Qualität, mit der Aufnahme vom Notebook-Mikrofon (YouTube Playlist)
  • Beamerbild und Dozent (mit Tafel) und Umhängemikrofon (Aufnahme schlägt hin und wieder fehl)
Datum Thema Nur Beamer Dozent und Beamer
24.10. Warum Rust?/Organisatorisches, Grundlagen YouTube -
26.10. Git und GitHub/Rust einrichten, Grundlagen YouTube -
31.10. Grundlagen, Ownership-System (Teil 1), Strings YouTube via OpenCast
02.11. Strings, Git (Teil 2) YouTube via OpenCast
07.11. Structs, impl-Block und Methodensyntax, Diverses (Vec) YouTube -
09.11. Diverses (Konstanten, Tuple-Struct, Match, Pattern), Enums YouTube -
14.11. Nachbesprechung Aufgaben, Error Handling YouTube via OpenCast
16.11. Error Handling, tree.rs-Beispiel YouTube via OpenCast
21.11. Nachbesprechung Aufgaben, Module und use YouTube via OpenCast
23.11. Module, Crates und Cargo, Farbiger Calculator YouTube via OpenCast
28.11. Generics und Traits YouTube via OpenCast
30.11. Generics und Traits, Generic read Beispiel YouTube via OpenCast
05.12. Nachbesprechung Aufgaben, Iteratoren und Closures YouTube via OpenCast
07.12. Iteratoren und Closures, Kommaliste Beispiel YouTube via OpenCast
12.12. try! und ? (Error Handling), Closures, Themenideen Abschlussprojekt YouTube via OpenCast
14.12. Kekse und Coding ("Advent of Code") - -
02.01. Fällt aus - -
04.01. Blödsinn, Nachbesprechung Aufgaben, Makros YouTube via OpenCast
09.01. Nachbesprechung Aufgaben, Deref und Diverses, Low Level YouTube via OpenCast
11.01. Stack und Heap (Low Level) YouTube via OpenCast
16.01. Nachbesprechung Aufgaben, Trait Objects, Drop, Smartpointer YouTube via OpenCast
18.01. Informationen Abschlussprojekt, Interior Mutability, GC vs. RAII YouTube via OpenCast
23.01. Animal Beispiel, Tipps für Abschlussprojekt, Lifetimes YouTube via OpenCast
25.01. Lifetimes, Multithreading & Concurrency YouTube -
30.01. Organisatorisches, Ferris, Multithreading & Concurrency YouTube via OpenCast
01.02. Performance & Effizienz YouTube via OpenCast
06.02. Rust Community & Open Source YouTube via OpenCast
08.02. Unsafe & FFI YouTube via OpenCast

License

Code

All code in this repository (including the code in the slides) is licensed under either of

at your option.

Slides

All non-code content in this repository (most notable the slides) are licensed under CC-BY-SA 4.0.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted shall be licensed as above, without any additional terms or conditions.