© piick/Shutterstock.com
JavaScript Kompendium
Der aktuelle Stand der Implementierung und wohin die Reise geht

Der Status quo von WebAssembly

WebAssembly ist ein relativ neues, binäres Format für ausführbaren Programmcode im Web. Dieser Artikel beschäftigt sich mit der Motivation hinter WebAssembly, dem aktuellen Stand der Implementierung sowie den zukünftigen Erweiterungen.

Mirko Sertic


Mehr als nur statische HTML-Seiten im Browser anzuzeigen, hat eine lange Tradition. Der Wunsch nach dynamischen Inhalten ist so alt wie das Internet selbst. Als mit dem Netscape Navigator Version 2.02 im Jahr 1995 die Skriptsprache LiveScript der breiten Öffentlichkeit zugänglich gemacht wurde, war auch der Wunsch nach dynamischeren Inhalten plötzlich ein Stückchen näher an der Realität. LiveScript wurde später in JavaScript umbenannt und entwickelte sich zu einem Fundament des Internets wie wir es heute kennen. Die Entwicklung von immer dynamischeren Inhalten nahm dann ihren Lauf. Im Jahr 2005 prägte James Garret in seinem Aufsatz den Begriff AJAX und zeigte, wie es in Verbindung mit XML und Backend-Logik möglich ist, noch interaktivere Anwendungen zu bauen. JavaScript wurde immer beliebter.Richten wir nun unseren Blick in die etwas jüngere Vergangenheit, nämlich auf das Jahr 2010: JavaScript als Laufzeitumgebung ist überall. Webbrowser sind überall. Ein weltweit etablierter Standard. Daraus entsteht die Idee, genau diese Laufzeitumgebung auch für mehr als nur Webseiten zu nutzen. Aus einer Zusammenarbeit der Mozilla Foundation und dem Spielestudio Epic entsteht das Projekt Emscripten [1]. Emscripten ist ein C- bzw. C++-Compiler, der als Ergebnis JavaScript erzeugt. Mit diesem Compiler war es möglich, die Unreal-Spiele-Engine komplett nach JavaScript zu übersetzen und im Browser laufen zu lassen. Das beeindruckende Ergebnis war die Unreal-Cathedral-Demo.Die Epic-Tech-Demos zeigten es ganz deutlich: die JavaScript Engines in den Browsern sind dank Just-in-Time-Kompilierung leistungsfähiger als viele dachten, und man kann damit wesentlich mehr machen, als nur div-Tags ein- und auszublenden. Durch den Einsatz von Cross-Compilern wie Emscripten ist es möglich, bestehenden Quellcode in Form von C oder C++ ohne größere Umbauarbeiten in neuen Umgebungen laufen zu lassen. Dies eröffnet für bestehende Lösungen und Produkte komplett neue Kundensegmente und Verteilungsmöglichkeiten für lauffähige Software.Der Trend ist eindeutig. Der Anteil an JavaScript in Webseiten und Webanwendungen steigt stetig an, im Extremfall auf mehrere Millionen Zeilen Quellcode. Die Größe der Anwendungen nimmt teilweise schneller zu als die zur Verfügung stehende Rechenleistung auf mobilen Geräten oder die nutzbare Netzwerkbandbreite für den Download auf das Zielgerät. Daraus ergeben sich zwei Lücken, eine offensichtliche und eine vielleicht weniger offensichtliche.Die offensichtliche ...

JavaScript Kompendium
Der aktuelle Stand der Implementierung und wohin die Reise geht

Der Status quo von WebAssembly

WebAssembly ist ein relativ neues, binäres Format für ausführbaren Programmcode im Web. Dieser Artikel beschäftigt sich mit der Motivation hinter WebAssembly, dem aktuellen Stand der Implementierung sowie den zukünftigen Erweiterungen.

Mirko Sertic


Mehr als nur statische HTML-Seiten im Browser anzuzeigen, hat eine lange Tradition. Der Wunsch nach dynamischen Inhalten ist so alt wie das Internet selbst. Als mit dem Netscape Navigator Version 2.02 im Jahr 1995 die Skriptsprache LiveScript der breiten Öffentlichkeit zugänglich gemacht wurde, war auch der Wunsch nach dynamischeren Inhalten plötzlich ein Stückchen näher an der Realität. LiveScript wurde später in JavaScript umbenannt und entwickelte sich zu einem Fundament des Internets wie wir es heute kennen. Die Entwicklung von immer dynamischeren Inhalten nahm dann ihren Lauf. Im Jahr 2005 prägte James Garret in seinem Aufsatz den Begriff AJAX und zeigte, wie es in Verbindung mit XML und Backend-Logik möglich ist, noch interaktivere Anwendungen zu bauen. JavaScript wurde immer beliebter.Richten wir nun unseren Blick in die etwas jüngere Vergangenheit, nämlich auf das Jahr 2010: JavaScript als Laufzeitumgebung ist überall. Webbrowser sind überall. Ein weltweit etablierter Standard. Daraus entsteht die Idee, genau diese Laufzeitumgebung auch für mehr als nur Webseiten zu nutzen. Aus einer Zusammenarbeit der Mozilla Foundation und dem Spielestudio Epic entsteht das Projekt Emscripten [1]. Emscripten ist ein C- bzw. C++-Compiler, der als Ergebnis JavaScript erzeugt. Mit diesem Compiler war es möglich, die Unreal-Spiele-Engine komplett nach JavaScript zu übersetzen und im Browser laufen zu lassen. Das beeindruckende Ergebnis war die Unreal-Cathedral-Demo.Die Epic-Tech-Demos zeigten es ganz deutlich: die JavaScript Engines in den Browsern sind dank Just-in-Time-Kompilierung leistungsfähiger als viele dachten, und man kann damit wesentlich mehr machen, als nur div-Tags ein- und auszublenden. Durch den Einsatz von Cross-Compilern wie Emscripten ist es möglich, bestehenden Quellcode in Form von C oder C++ ohne größere Umbauarbeiten in neuen Umgebungen laufen zu lassen. Dies eröffnet für bestehende Lösungen und Produkte komplett neue Kundensegmente und Verteilungsmöglichkeiten für lauffähige Software.Der Trend ist eindeutig. Der Anteil an JavaScript in Webseiten und Webanwendungen steigt stetig an, im Extremfall auf mehrere Millionen Zeilen Quellcode. Die Größe der Anwendungen nimmt teilweise schneller zu als die zur Verfügung stehende Rechenleistung auf mobilen Geräten oder die nutzbare Netzwerkbandbreite für den Download auf das Zielgerät. Daraus ergeben sich zwei Lücken, eine offensichtliche und eine vielleicht weniger offensichtliche.Die offensichtliche ...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang