====== Einführung in Rust ====== Am //16. Januar 2020// findet im //Krautspace// ein Vortrag zur Programmiersprache Rust statt. Wir treffen uns //ab 19 Uhr// und unser Referent Christian Kauhaus gibt anhand einiger praktischer Beispiele eine Einführung in das Thema. ===== Ankündigung ===== Rust ist eine relativ junge Programmiersprache mit Schwerpunkt auf Low-Level- und ressourcenkritischen Anwendungen. Hauptziele der ursprünglich von Mozilla vorangetriebenen Entwicklung sind Zuverlässigkeit und Performance. Wichtige Anwendungen sind u.a. Netzwerk-Backends, Embedded Systems und Systemprogrammierung. Rust hat darüber hinaus Verbreitung als Allzweck-Programmiersprache gefunden und wird zunehmend als Alternative zu C und C++ gesehen. Diese Eigenschaften bekommt Rust maßgeblich durch ein spezielles Speicherzugriffsmodell (Borrowing/Lifetimes), das sich von denen anderer Programmiersprachen stark unterscheidet und Einarbeitung erfordert. Sobald man diese Hürde überwunden hat, wird man mit robuster Fehlerbehandlung, sicherer Nebenläufigkeit sowie Programmierabstraktionen ohne (oder mit nur geringem) Laufzeitaufwand belohnt. Rust ist attraktiv für Programmierer aus verschiedenen Anwendungsdomänen. Die Sprache eignet sich gleichermaßen für API-Backends, die bei Antwortzeiten im Mikrosekundenbereich und unter hoher Transaktionslast stabil laufen müssen, wie auch für Microcontroller-Steuerungen mit hohen Zuverlässigkeitsanforderungen. Weiterhin findet sie wegen ihrer Performanceeigenschaften auch Verbreitung in der Spieleentwicklung und sogar im Web-Frontendbereich (Web Assembly). Ich möchte den Abend zweiteilen: In der ersten Hälfte präsentiere ich wichtige Sprachkonzepte von Rust. In der zweiten Hälfte möchte ich euch mit praktischen Übungen am Rechner erste Programmiererfahrungen machen lassen. ===== Vorkenntnisse ===== Programmiererfahrung in einer anderen Programmiersprache, Umgang mit Editor und Compiler. ===== Mitbringen ===== Laptop - idealerweise mit bereits installiertem Rust. Compiler für gängige Systeme gibt es kostenlos auf https://rustup.rs/. Zur Vorbereitung solltet ihr folgende Schritte tun: * Laptop oder anderes Gerät mitbringen * Compiler und stdlib von https://rustup.rs installieren * Falls ihr mögt, könnt ihr in eurem Lieblingseditor Unterstützung für Rust aktivieren * Probiert ein Hello-World-Programm zu Kompilieren. Eine Anleitung gibt es im [[https://doc.rust-lang.org/book/ch01-02-hello-world.html|Rust-Buch]] oder in der [[https://www.rust-lang.org/learn/get-started|Getting-Started-Sektion]]. ===== Referent ===== Christian Kauhaus arbeitet bei Flying Circus Internet Operations (Halle/Saale) als Systems Engineer. {{tag>rust programmierung}}