• IT-Karriere:
  • Services:

Programmiersprachen: Weniger Frust mit Rust

Die Programmiersprache Rust macht nicht nur weniger Fehler, sie findet sie auch früher.

Artikel von Florian Gilcher veröffentlicht am
Rust soll sicherer sein als andere Programmiersprachen.
Rust soll sicherer sein als andere Programmiersprachen. (Bild: Foto von Magda Ehlers von Pexels)

Seit einiger Zeit ist die Programmiersprache Rust ein beliebtes Diskussionsthema. Sicherer soll sie sein, dabei aber genauso schnell wie andere Systemprogrammiersprachen.

Ein starker Fokus der Diskussion liegt auf der Frage, wie viele Fehler am Ende in der geschriebenen Software landen. Hier wird gerne gesagt, dass Rust schwerer zu schreiben sei als andere Programmiersprachen: Der Compiler kreidet viele Fehler an, Laufzeitfehler müssen aktiv ignoriert werden. Klar, wenn Rust-Software erst mal läuft, ist sie oft sehr stabil; der Weg dahin sei aber eine Reise, lautet die Kritik.

Aber genau hier liegt das Missverständnis: Denn die Rigidität der Sprache und des Compilers ist Absicht. Natürlich gibt es immer den Fall, dass etwa ein Sprachfeature fehlt - aber das ist eher ein Bug.

Dass Programme in Entwicklung 90 Prozent der Zeit kaputt sind, ist ein Gedanke von Idris-Erfinder Edwin Brady und er hat ihn als Leitbild für die Entwicklung seiner Sprache formuliert. Brady meinte das sowohl im syntaktischen Sinne (während ich gerade in ein Programm tippe, ist es syntaktisch inkorrekt) als auch auf der semantischen, funktionalen Ebene (während ich eine Funktion baue/ändere, kann ein Codezweig schon das tun, was er soll - der andere nicht).

Stellenmarkt
  1. IT-Systemhaus der Bundesagentur für Arbeit, Nürnberg
  2. Technische Universität Dresden, Dresden

Das klingt hochgestochen, ist es aber nicht. Denn Bradys Fokus auf den Produktionsprozess ist ein praktischer: Den Produktionsprozess zu verbessern, führt am Ende zu höherer Geschwindigkeit und größerer Stabilität. Dazu ist aber nicht die Mikro-Sicht nötig (Wie lange brauche ich, bis der Code kompiliert?), sondern die Makro-Sicht (Wie lange habe ich benötigt, um das Feature stabil abzuliefern?).

Die Lösung für das syntaktische Problem ist zwar komplex, aber zumindest in der Basis verstanden: Entwicklungsumgebungen - sei es nun eine volle IDE oder ein Editor-Plugin - gehen weite Strecken, um bei eigentlich syntaktisch inkorrektem Code Empfehlungen zu dessen Korrektur zu geben. Diese Tools gibt es auch für Rust und sie funktionieren nach wohlverstandenen Prinzipien. Die Anwendung dieser Idee auf die Sprachebene ist aber ein Schwerpunkt neuerer Sprachen. Denn stand früher die Produktivität beim Runterschreiben im Fokus, steht heute die Korrektheit des Niedergeschriebenen im Zentrum.

Früher an später denken

Rust verschreibt sich gemäß seinem Motto "Empowering everyone to build reliable and efficient software" daher der Makro-Sicht: Wie kann ich Code produzieren, der mit hoher Wahrscheinlichkeit korrekt ist? Dass Rust diesen Ansatz hat, wundert nicht, denn es kommt aus Mozilla Research, einer Firma, die mit Firefox eine der größten Codebasen der Welt produziert und diese alle sechs Wochen veröffentlicht. Funktionale Fehler sind hier kritisch und äußern sich im besten Fall in Abstürzen, im schlimmsten in gravierenden Sicherheitslücken.

Workshop der Golem Akademie: Einführung in die Programmierung mit Rust

Zudem können Fehler sehr teuer werden. Der Microsoft-Mitarbeiter Ryan Levick bezifferte die Entwicklungskosten eines Security-Patches für Windows einmal mit 150.000 US-Dollar - und diese Schätzung enthielt nur die reinen Prozesskosten auf Seiten Microsofts. Je später Fehler im Prozess auffallen, desto teurer werden sie, und ist der Fehler erst beim Kunden, kommt auch noch die Kritikalität des Fehlers ins Spiel.

Rust will daher komplexe Probleme früh lösen - am besten beim Coden - und bietet dazu Strukturen an.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Dateien öffnen und schließen in Rust 
  1. 1
  2. 2
  3. 3
  4. 4
  5.  


Anzeige
Top-Angebote
  1. 59€ (Bestpreis)
  2. 1.099€ (Bestpreis)
  3. (u. a. Super Seducer 3 - Uncensored Edition für 10,79€, Total War: Rome - Remastered für 26...
  4. 399,99€

Proctrap 28. Feb 2021 / Themenstart

oh wow, das ist krass, sehe gerade das nutzt https://crates.io/crates/druid

ronda-melmag 26. Feb 2021 / Themenstart

Jo ich meinte Rxjava und konsorten wobei ich für Vert.x schwärme :-) und eine Combo aus...

Filius 25. Feb 2021 / Themenstart

Was meinst du mit "DB Anwendung"? Gerade wenn man eine ordentliche Datenbank im...

Johannes321 25. Feb 2021 / Themenstart

So gemein das jetzt klingt - für die, die die Vorteile von solchen Sprachen nicht sehen...

wurstdings 25. Feb 2021 / Themenstart

Oh keine GUIs, alles singlethreaded, kein asynchroner I/O, keine Buffer? Über welche...

Kommentieren


Folgen Sie uns
       


Zoom Escaper ausprobiert

Der Zoom Escaper ist eine Möglichkeit, sich aus Videokonferenzen zu schummeln. Wir haben ihn ausprobiert.

Zoom Escaper ausprobiert Video aufrufen
Programm für IT-Jobeinstieg: Hoffen auf den Klebeeffekt
Programm für IT-Jobeinstieg
Hoffen auf den Klebeeffekt

Aktuell ist der Jobeinstieg für junge Ingenieure und Informatiker schwer. Um ihnen zu helfen, hat das Land Baden-Württemberg eine interessante Idee: Es macht sich selbst zur Zeitarbeitsfirma.
Ein Bericht von Peter Ilg

  1. Arbeitszeit Das Sechs-Stunden-Experiment bei Sipgate
  2. Neuorientierung im IT-Job Endlich mal machen!
  3. IT-Unternehmen Die richtige Software für ein Projekt finden

Weclapp-CTO Ertan Özdil: Wir dürfen nicht in Schönheit und Perfektion untergehen!
Weclapp-CTO Ertan Özdil
"Wir dürfen nicht in Schönheit und Perfektion untergehen!"

Der CTO von Weclapp träumt von smarter Software, die menschliches Eingreifen in der nächsten ERP-Generation reduziert. Deutschen Perfektionismus hält Ertan Özdil aber für gefährlich.
Ein Interview von Maja Hoock


    Fiat 500 als E-Auto im Test: Kleinstwagen mit großem Potenzial
    Fiat 500 als E-Auto im Test
    Kleinstwagen mit großem Potenzial

    Fiat hat einen neuen 500er entwickelt. Der Kleine fährt elektrisch - und zwar richtig gut.
    Ein Test von Peter Ilg

    1. Vierradlenkung Elektrischer GMC Hummer SUV fährt im Krabbengang seitwärts
    2. MG Cyberster MG B Roadster mit Lasergürtel und Union Jack
    3. Elektroauto E-Auto-Prämie übersteigt in 2021 schon Vorjahressumme

      •  /