Rust-Workshop: Unterschied zwischen den Versionen
Anlumo (Diskussion | Beiträge) |
|||
Zeile 16: | Zeile 16: | ||
== Rust-Workshop == | == Rust-Workshop == | ||
− | [[User:anlumo|anlumo]] hält | + | [[User:anlumo|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 === | === Was ist Rust === | ||
− | Rust ist eine | + | 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. | + | 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 | + | 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 | ||
|- | |- | ||
− | | | + | |Hier könnte dein Name stehen!|| |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} |
Version vom 7. Juni 2022, 21:21 Uhr
Sprache: | Deutsch |
---|
Rust for Beginners | |
![]() | |
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! |