myCSharp.de - DIE C# und .NET Community (https://www.mycsharp.de/wbb2/index.php)
- Externes (https://www.mycsharp.de/wbb2/board.php?boardid=80)
-- Szenenews (https://www.mycsharp.de/wbb2/board.php?boardid=75)
--- WebAssembly Desktop Standardisierung (https://www.mycsharp.de/wbb2/thread.php?threadid=121729)


Geschrieben von Abt am 28.03.2019 um 11:34:
  WebAssembly Desktop Standardisierung
Mozilla Hacks hat gestern eine sehr interessante Standardisierung platziert: WebAssembly ausserhalb vom Web

 Standardizing WASI: A system interface to run WebAssembly outside the web

Worum geht es?

Das Web bisher war fokussiert auf JavaScript - jeder Browser hat JavaScript verstanden.
Das Problem von JavaScript ist aber, dass es teilweise einfach eine Hassliebe ist; und, dass JavaScript eben im Plaintext auf dem Client verarbeitet wird.

Seit geraumer Zeit gibt es nun aber die WebAssembly.
Bei einer WebAssembly wird der Quellcode nicht im Klartext ausgeführt, sondern - wie zB. bei Java oder .NET - über Bytecode (also quasi eine Zwischensprache via Virtual Machine).
Das hat das Resultat, dass man eine Client-App im Browser eben nicht mehr nur durch JavaScript abbilden kann, sondern auch durch .NET (zB. via Blazor), in Java, Rust, Go oder in C/C++.

Funktionieren tut das Ganze auch bereits in Chrome, Firefox, Edge und WebKit-basierten Browsern:  https://caniuse.com/#search=wasm

WASI
Durch die enorme Entwicklungsgeschwindigkeiten von Webtechnologien sind diese auch schon längst auf dem Desktop angekommen.
Schon heute ist es möglich einfach Single Page Application-Technologien wie Angular mit HTML und Co auf dem Desktop auszuführen; zB. via Electron.
Auch Apps sind kein Problem mehr (zB. via React Native oder NativeScript).

WASI - WebAssembly system interface - ist nun der zwangsläufige Ansatz, wie Desktop-Schnittstellen für WebAssembly Applikationen über einen gemeinsamen Standard und Technologieneutral zur Verfügung gestellt werden, sodass auf System APIs zugegriffen werden kann - natürlich unter dem Aspekt der Sicherheit.

Damit wäre ein weiterer Schritt gegeben, dass heutige Web-Technologien mehr und mehr auf dem Desktop ankommen.


Geschrieben von trashkid2000 am 28.03.2019 um 21:52:
 
Hi Abt,

vielen Dank erstmal für Deinen Beitrag Daumen hoch

Zitat von Abt:
Das Problem von JavaScript ist aber, dass es teilweise einfach eine Hassliebe ist; und, dass JavaScript eben im Plaintext auf dem Client verarbeitet wird.

Genau so ist es... die Liebe dazu und der Hass dagegen, das sind wirklich Welten...

Zitat von Abt:
Damit wäre ein weiterer Schritt gegeben, dass heutige Web-Technologien mehr und mehr auf dem Desktop ankommen.

Ein sehr guter Weg in die richtige Richtung.
Aber ich sehe es nicht kommen, das man mit einer SPA alles machen kann, was man halt mit einer Desktop-App machen kann.

Denn irgendwie bist Du ja immer im Browser gefangen... das hoffe ich doch zumindest !!

Marko


Geschrieben von Abt am 28.03.2019 um 22:27:
 
Zitat von trashkid2000:
Aber ich sehe es nicht kommen, das man mit einer SPA alles machen kann, was man halt mit einer Desktop-App machen kann.

Eine "SPA" bezogen auf Web ist nichts anderes als eine korrekt umgesetzte WPF Anwendung mit MVVM Pattern.
SPA heisst hier ja nur, dass die Applikation an für sich komplett auf dem Client läuft ohne vollständigen Neuaufbau des Contents bei jeder Aktion.

Technologien wie C++, .NET (WinForms/WPF) oder Java haben aber zumindest aktuell noch einen Performance Vorteil, was die UI betrifft.
Für 99,9+% der Anwendungen ist das aber irrelevant, weil nicht notwendig.

Die wirkliche UI Performance brauchen nachher Games, CAD/CAM-Anwendungen, etc...

Zitat von trashkid2000:
Denn irgendwie bist Du ja immer im Browser gefangen... das hoffe ich doch zumindest !!

Darum gehts: Anwendungen mit WASI brauchen keinen Browser mehr.
WASI ist eine VM wie eben die Runtime von .NET Framework/.NET Core oder Java auch.
Und auch im Prinzip braucht Electron heute schon keinen (installierten) Browser, denn jede Electron App bringt ihre V8 Engine von Haus aus mit.


Geschrieben von Joetempes am 29.03.2019 um 05:50:
 
Hier noch ein deutscher Artikel auf Heise-Developer:

 Mozilla startet Standardisierungsprozess für WebAssembly außerhalb des Webs


© Copyright 2003-2020 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 31.05.2020 21:49