c't 16/2023
S. 152
Praxis
WebAssembly
Bild: KI Midjourney | Bearbeitung: c't

Assembler auf der Überholspur

Mit WebAssembly flinkeren Code für den Browser produzieren

JavaScript hat sich als die Lingua Franca der dynamischen Webseiten etabliert, aber seit einigen Jahren steigt ein neuer Konkurrent empor: WebAssembly ergänzt das Repertoire an Browserfeatures und eignet sich besonders gut für rechenintensive Aufgaben. Hier erklären wir, wie die Technik funktioniert.

Von Lars Hupel

Neben den zwei großen Geschwistern HTML und CSS ist JavaScript mittlerweile ein unverzichtbarer Teil der modernen Webentwicklung geworden. Kein Wunder also, dass man immer mehr von dieser Sprache im Unterbau moderner Frontend-Anwendungen findet. Jedoch führt die maßlose Nutzung von JavaScript zu Anwendungen mit teilweise mehreren Megabyte an Code, sehr zulasten der Laufzeit.

Ob das immer vernünftig ist, lässt sich diskutieren, aber es gibt durchaus eine Reihe von sinnvollen Anwendungsfällen. Wer könnte sich beispielsweise heute noch ein Leben ohne Google Docs oder Bing Maps vorstellen? Um den besonders rechenintensiven Teilen solcher Anwendungen Beine zu machen, gibt es die Sprache WebAssembly, die in modernen Browsern bereits integriert ist. Wir haben uns angeschaut, wie sie entstanden ist, was sie anders als JavaScript macht und ein kleines Beispiel in Form eines Zählers geschrieben, das Sie selbst nachprogrammieren können. Falls es Ihnen schon in den Fingern juckt, finden Sie sämtlichen Code unter ct.de/y8rm.

Kommentieren