Jetzt am Kiosk: Das Entwickler Magazin 2.19

WebAssembly – Polyglott im Netz. Das Entwickler Magazin 2.19 ist da!
Keine Kommentare

Das neue Entwickler Magazin 2.19 ist ab sofort am Kiosk erhältlich. Unter dem Titel „WebAssembly – Polyglott im Netz“ gehen unsere Autoren auf WebAssembly (Wasm) ein, das es Entwicklern ermöglicht, Sprachen wie C, C++ und Rust in Code zu kompilieren, der vom Browser ausgeführt werden kann.

Wasm los mit WebAssembly?

Liebe Leserinnen, liebe Leser,

geht es um Trends im Web, spricht man von neuen Frameworks, JavaScript im Allgemeinen und GraphQL als möglicher Alternative zum klassischen REST Service. Das alles bezieht sich auf das Internet, wie wir es kennen: Online, im Browser. Zu den Trends in Sachen Webtechnologie gehört aber auch, dass Web und Desktop zusammenwachsen, das Web also nativ wird. Progressive Web Apps (PWAs) und Electron sind hier die großen Schlagworte, um die sich die Szene dreht. Beides bringt Webtechnologien in lokal installierte Anwendungen auf dem PC oder Mobilgerät; die Trennung zwischen On- und Offline verschwimmt. Ausgeführt werden sowohl PWAs als auch Electron-Anwendungen aber im unsichtbaren Browser. Das Web wird also nativ, aber weiterhin in JavaScript geschrieben.

Der Trend funktioniert aber auch anders herum: WebAssembly (Wasm) ermöglicht es Entwicklern, Sprachen wie C, C++ und Rust in Code zu kompilieren, der vom Browser ausgeführt werden kann. Das Konzept ist nicht radikal neu, gewinnt aber immer mehr Fans: Alle reden über WebAssembly, das in ein paar Jahren zum Standard für große Anwendungen im Browser werden könnte. Noch ist der W3C-Standard aber jung und neu – und auch das macht Wasm spannend: Die WebAssembly-Spezifikation liegt seit Ende 2017 in Version 1.0 vor, die Browser-Engines von Chrome, Safari, Firefox und Edge können WebAssembly-Code ausführen. Bei der Versionierung als v1.0 ging es, so ist der offiziellen Website zu entnehmen, allerdings vor allem darum, praktische Erfahrungen zu sammeln, und nicht so sehr darum, einen Status in Stein zu meißeln. WebAssembly entwickelt sich noch, kann aber bereits genutzt werden.

Wasm stellt eine Art Weiterentwicklung von asm.js dar, das selbst als Subset von JavaScript entworfen wurde und ebenfalls Code aus anderen Sprachen in den Browser bringt. Die Verwendung von JavaScript setzte aber Grenzen für die Performance von Anwendungen.

WebAssembly soll hier noch eine Schippe drauflegen und somit vor allem für rechenaufwendige und große Anwendungen zur Option werden. Dazu wird der eingegebene Code aus verschiedenen Programmiersprachen zu Binärdateien kompiliert. Wo asm.js schlussendlich doch an gewisse Grenzen von JavaScript gebunden war, will WebAssembly zur nativen Geschwindigkeit aufschließen, die derzeit nur Desktopanwendungen bieten. Wie man WebAssembly in eigenen Projekten nutzen kann und wie weit die Implementierung fortgeschritten ist, erklärt Mirko Sertic in seinem Artikel zum Status quo von WebAssembly im Rahmen unseres Titelthemas.

Das W3C-Komitee, das die WebAssembly-Spezifikation erstellt, hat in den Zielen für Wasm festgelegt, dass das Minimum Viable Product vornehmlich auf C und C++ ausgerichtet sein soll. Während C und C++ mit Sicherheit interessant für viele Entwickler sind, ist das allein aber nicht der Grund für die große Aufregung rund um Wasm. Vielmehr geht es um das, was die ITSzene aus dem Standard macht. So gibt es inzwischen beispielsweise eine Go-Implementierung für WebAssembly. Mit Blazor ist auch eine Integration für C# auf dem Weg. Beide Varianten sind in diesem Magazin vertreten.

Im Interview zu Blazor gibt Rainer Stropek dann auch eine ganz einfache Erklärung dafür, warum Blazor, und damit WebAssembly, derzeit so gut ankommt: „Blazor ist das, was Nerds wie ich lieben!“. Als Bleeding-Edge-Technologie könne man damit experimentieren, ausprobieren und selbst gestalten. Und genau dazu möchten wir auch Sie nun animieren: Schauen Sie sich an, was unsere Autoren zu WebAssembly sagen, probieren Sie den neuen Standard aus und finden Sie selbst heraus, ob C++ und Co. ins Web gehören. Jetzt ist die Zeit dafür gekommen!

Ann-Cathrin Klose, Redakteurin Entwickler Magazin
Twitter: @entwickler

Die Highlights im Entwickler Magazin 2.19

Der Status quo von WebAssembly
Der aktuelle Stand der Implementierung und wohin die Reise geht
Mirko Sertic

Container als Datenbankhabitat
Teil 1: Motivation, Fehler und Beefy Server
Johannes Unterstein

Slice down the Monolith
Wann Microservices (nicht) sinnvoll sind
Marco Schulz

Amae: Motivation auf Knopfdruck
Ein autonomer Motivationsautomat für Entwickler
Martin Mohr

Jetzt am Kiosk: Das Entwickler Magazin 2.19: WebAssembly – Polyglott im Netz

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -