Rust-Workshop: Unterschied zwischen den Versionen

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen
Zeile 16: Zeile 16:
 
== Rust-Workshop ==
 
== Rust-Workshop ==
  
[[User:anlumo|anlumo]] hält einen kleinen Workshop für die Programmiersprache Rust!
+
[[User:anlumo|anlumo]] hält eine kleine Workshopserie für die Programmiersprache Rust!
  
'''Termin ist Montag, 2018-12-10 um 14:00. Geplant sind ca. 4h, d.h. bis 18:00.'''
+
* 2022-06-28 19:00
 +
* 2022-07-05 19:00
 +
* 2022-07-12 19:00
 +
 
 +
Jeweils bis ca. 22 Uhr, d.h. ca. 3x3h. Der letzte Termin (siehe unten) war viel zu knapp bemessen von der Zeit her, daher jetzt auf mehrere Termine aufgeteilt.
 +
 
 +
=== Bisherige Termine ===
 +
 
 +
Montag, 2018-12-10 um 14:00. Geplant waren ca. 4h, d.h. bis 18:00. Tatsächlich ist es dann bis ca. 19:30 gelaufen.
  
 
=== Was ist Rust ===
 
=== Was ist Rust ===
  
Rust ist eine sehr neue Programmiersprache, die sich zum Ziel gesetzt hat, C als Systemprogrammiersprache abzulösen. Sie ist daher einerseits relativ low-level wie C, aber andererseits hat sie alle Vorzüge, die man von modernen Programmiersprachumgebungen wie JavaScript und Ruby gewohnt ist.
+
Rust ist eine relativ neue Programmiersprache, die sich zum Ziel gesetzt hat, C als Systemprogrammiersprache abzulösen. Sie ist daher einerseits relativ low-level wie C, aber andererseits hat sie alle Vorzüge, die man von modernen Programmiersprachumgebungen wie JavaScript und Ruby gewohnt ist.
  
 
Das besondere Kennzeichen von Rust ist die Absicherung zur compile time. Wenn man nicht absichtlich die Compilerchecks abdreht, garantiert ein erfolgreicher Compile-Vorgang, dass kein ungültiger Speicherzugriff erfolgt, und es kein undefiniertes Verhalten im Code gibt (das ist ein großer Unterschied zu C, wo so gut wie alle Programme irgendwo unabsichtlich undefiniertes Verhalten hervorrufen, weil das so ein Minenfeld ist). Das bedeutet einerseits, dass es oft sehr lange dauern kann, bis das Programm wirklich kompiliert, aber sobald es das tut, verhält es sich fast immer so wie man es erwartet.
 
Das besondere Kennzeichen von Rust ist die Absicherung zur compile time. Wenn man nicht absichtlich die Compilerchecks abdreht, garantiert ein erfolgreicher Compile-Vorgang, dass kein ungültiger Speicherzugriff erfolgt, und es kein undefiniertes Verhalten im Code gibt (das ist ein großer Unterschied zu C, wo so gut wie alle Programme irgendwo unabsichtlich undefiniertes Verhalten hervorrufen, weil das so ein Minenfeld ist). Das bedeutet einerseits, dass es oft sehr lange dauern kann, bis das Programm wirklich kompiliert, aber sobald es das tut, verhält es sich fast immer so wie man es erwartet.
Zeile 28: Zeile 36:
 
Rust ist nicht objekt-orientiert, sondern hat Strukturen, denen man Eigenschaften hinzufügen kann, ähnlich interfaces in C#/Java oder abstract classes in C++. Kurz, Separation of Concerns wird wie in OOP auch groß geschrieben, aber die Lösung dafür ist eine andere.
 
Rust ist nicht objekt-orientiert, sondern hat Strukturen, denen man Eigenschaften hinzufügen kann, ähnlich interfaces in C#/Java oder abstract classes in C++. Kurz, Separation of Concerns wird wie in OOP auch groß geschrieben, aber die Lösung dafür ist eine andere.
  
Rust unterstützt neben den üblichen Plattformen (inkl. ARM-Mikrocontrollern!) auch nativ WebAssembly, d.h. man kann damit auch Webprogrammierung machen (gibt einige Frameworks dafür im Aufbau).
+
Rust unterstützt neben den üblichen Plattformen (inkl. Mikrocontrollern!) auch nativ WebAssembly, d.h. man kann damit auch Webprogrammierung machen (gibt einige Frameworks dafür).
  
 
=== Workshop-Informationen ===
 
=== Workshop-Informationen ===
Zeile 34: Zeile 42:
 
Die Idee ist, dass jeder Teilnehmende im [[Hauptraum]] des Metalabs mit dem eigenen Notebook teilnimmt, während [[User:anlumo|anlumo]] die Grundzüge erklärt. Rust läuft unter anderem unter Windows, macOS und Linux auf Intel und ARM (vollständige Liste [https://forge.rust-lang.org/platform-support.html hier]) und braucht nicht viele Resourcen, damit sollte es kein Problem sein, das auf der eigenen Hardware zum Laufen zu bringen. Die Installation selbst ist Teil des Workshops.
 
Die Idee ist, dass jeder Teilnehmende im [[Hauptraum]] des Metalabs mit dem eigenen Notebook teilnimmt, während [[User:anlumo|anlumo]] die Grundzüge erklärt. Rust läuft unter anderem unter Windows, macOS und Linux auf Intel und ARM (vollständige Liste [https://forge.rust-lang.org/platform-support.html hier]) und braucht nicht viele Resourcen, damit sollte es kein Problem sein, das auf der eigenen Hardware zum Laufen zu bringen. Die Installation selbst ist Teil des Workshops.
  
Weiters ist ein Texteditor notwendig, idealerweise mit Syntaxhighlighting für die Sprache ([[User:anlumo|anlumo]] verwendet Atom, aber vi, emacs, VSCode und viele andere gehen auch).
+
Weiters ist ein Texteditor notwendig, idealerweise mit Syntaxhighlighting für die Sprache ([[User:anlumo|anlumo]] verwendet Visual Studio Code, aber vim, emacs und viele andere gehen auch).
  
 
Der Workshop geht davon aus, dass die Teilnehmenden eine C-artige Programmiersprache (idealerweise C selbst) können, sonst müsste zu weit ausgeholt werden.
 
Der Workshop geht davon aus, dass die Teilnehmenden eine C-artige Programmiersprache (idealerweise C selbst) können, sonst müsste zu weit ausgeholt werden.
Zeile 43: Zeile 51:
 
!Name !! Kommentar
 
!Name !! Kommentar
 
|-
 
|-
|<s>[[User:Fbr|fbr]]</s>|| wenn nach dem 06.11.
+
|Hier könnte dein Name stehen!||
|-
 
|[[User:Hetti|Hetti]]||
 
|-
 
|[[User:Wizard23|Wizard23]]||
 
|-
 
|[[User:Atrox|Atrox]]||
 
|-
 
|[[User:reox|reox]] || idealerweise ab November
 
|-
 
|[[User:daxim|daxim]]||
 
|-
 
|[[User:maxvalue|Max Fuxjäger]]||
 
|-
 
|[[User:prikle|prikle]]||
 
|-
 
|[[User:Stoiker|Stoiker]]||
 
|-
 
|[[User:amir|amir]]||
 
|-
 
|[[User:zwax|Zwax]]||
 
|-
 
|farmer||
 
|-
 
|[[User:Lumbric|lumbric]]||
 
|-
 
|[[User:meadow|meadow]]||
 
|-
 
|[[User:kelvan|kelvan]]||
 
|-
 
|[[User:catnat|catnat]]||
 
|-
 
|[[User:redplanet|redplanet]]||
 
|-
 
|[[User:Jaykay|Jaykay]]||
 
|-
 
|[[User:Informatom|Informatom]]||bin dabei!
 
|-
 
|Dein Name hier||
 
 
|}
 
|}

Version vom 7. Juni 2022, 21:21 Uhr

Sprache: Deutsch
Subpages:
Rust-Workshop hat keine Unterseiten.


Rust for Beginners
Rust logo.svg
2018-12-10 14:00 CET
Hauptraum
anlumo
Workshop
gratis
planning
Learning Rust
Zuletzt aktualisiert: 07.06.2022


Rust-Workshop

anlumo hält eine kleine Workshopserie für die Programmiersprache Rust!

  • 2022-06-28 19:00
  • 2022-07-05 19:00
  • 2022-07-12 19:00

Jeweils bis ca. 22 Uhr, d.h. ca. 3x3h. Der letzte Termin (siehe unten) war viel zu knapp bemessen von der Zeit her, daher jetzt auf mehrere Termine aufgeteilt.

Bisherige Termine

Montag, 2018-12-10 um 14:00. Geplant waren ca. 4h, d.h. bis 18:00. Tatsächlich ist es dann bis ca. 19:30 gelaufen.

Was ist Rust

Rust ist eine relativ neue Programmiersprache, die sich zum Ziel gesetzt hat, C als Systemprogrammiersprache abzulösen. Sie ist daher einerseits relativ low-level wie C, aber andererseits hat sie alle Vorzüge, die man von modernen Programmiersprachumgebungen wie JavaScript und Ruby gewohnt ist.

Das besondere Kennzeichen von Rust ist die Absicherung zur compile time. Wenn man nicht absichtlich die Compilerchecks abdreht, garantiert ein erfolgreicher Compile-Vorgang, dass kein ungültiger Speicherzugriff erfolgt, und es kein undefiniertes Verhalten im Code gibt (das ist ein großer Unterschied zu C, wo so gut wie alle Programme irgendwo unabsichtlich undefiniertes Verhalten hervorrufen, weil das so ein Minenfeld ist). Das bedeutet einerseits, dass es oft sehr lange dauern kann, bis das Programm wirklich kompiliert, aber sobald es das tut, verhält es sich fast immer so wie man es erwartet.

Rust ist nicht objekt-orientiert, sondern hat Strukturen, denen man Eigenschaften hinzufügen kann, ähnlich interfaces in C#/Java oder abstract classes in C++. Kurz, Separation of Concerns wird wie in OOP auch groß geschrieben, aber die Lösung dafür ist eine andere.

Rust unterstützt neben den üblichen Plattformen (inkl. Mikrocontrollern!) auch nativ WebAssembly, d.h. man kann damit auch Webprogrammierung machen (gibt einige Frameworks dafür).

Workshop-Informationen

Die Idee ist, dass jeder Teilnehmende im Hauptraum des Metalabs mit dem eigenen Notebook teilnimmt, während anlumo die Grundzüge erklärt. Rust läuft unter anderem unter Windows, macOS und Linux auf Intel und ARM (vollständige Liste hier) und braucht nicht viele Resourcen, damit sollte es kein Problem sein, das auf der eigenen Hardware zum Laufen zu bringen. Die Installation selbst ist Teil des Workshops.

Weiters ist ein Texteditor notwendig, idealerweise mit Syntaxhighlighting für die Sprache (anlumo verwendet Visual Studio Code, aber vim, emacs und viele andere gehen auch).

Der Workshop geht davon aus, dass die Teilnehmenden eine C-artige Programmiersprache (idealerweise C selbst) können, sonst müsste zu weit ausgeholt werden.

Interessentenliste

Name Kommentar
Hier könnte dein Name stehen!