WebAssembly – Czwarty język Internetu

Wydarzenie

5. Grudnia 2019 – WebAssembly [Wasm] stało się oficjalną rekomendacją World Wide Web Consortium i dołączyło do HTML, CSS i JavaScript jako czwarty język, który może działać natywnie w przeglądarkach.

Prawie 90% zainstalowanych przeglądarek (desktopowych oraz mobilnych) wspierało Wasm na koniec roku 2019. Apli-kacje WebAssembly mogą być tworzone z użyciem różnych języków i narzędzi do budowania, takich jak C, C++, Rust, D, Go, C# i inne.

Roland Guelle, VP of Technology, Avenga, komentuje:

Ekosystem przeglądarek i internetu jest najpotężniejszą i najbardziej uniwersalną platformą dostępną dzisiaj.
Połączenie HTML, CSS oraz JavaScript-u to trzy kluczowe składniki tej platformy od lat 90-tych poprzedniego stulecia. Aktualnie JavaScript jest jednym z najpopularniejszych języków programowania (https://www.tiobe.com/tiobe-index/) w tym potężnym ekosystemie.

Dlaczego WebAssembly?
Ekosystem JavaScript urósł w ciągu ostatnich 10 lat, napędzany przez głównych producentów przeglądarek a także node.js. Oczywiście, z jego zaletami i wadami, posiada wysoce zoptymalizowany w ciągu ostatnich 20 lat silnik runtime, ale wciąż jest “skryptem”. Wydaje się, że teraz nadszedł czas na inne rozwiązanie.

Czy Wasm zastąpi JavaScript?
Moim zdaniem – nie. Wasm dodaje kolejny ważny komponent do ekosystemu przeglądarkowego. Cała gama innych języków posiada efektywne narzędzia do tworzenia i budowy aplikacji i swoje grupy docelowe programistów. W przypadkach takich jak renderowanie 3D, gry, streaming, szyfrowanie i inne zadania krytyczne wydajnościowo, Wasm zmniejszy różnice w wydajności między językiem skryptowym a niskopoziomowym API przeglądarki. To początek nowych możliwości w tym dzisiaj najbardziej globalnie powszechnym ekosystemie.

Jacek Chmiel, Director, Avenga Labs, zauważa:

Zmiany takie jak ta, nie zdarzają się często, zatem jest to istotny dodatek do tak rozbudowanych możliwości przeglądarek i nowoczesnych aplikacji webowych.

Mimo nawet tak mocno zoptymalizowanych silników Javascript, wciąż są i będą niszowe zastosowania, które wymagają jeszcz więcej wydajności.

Niestety te możliwości teraz są najczęściej wykorzystywane / nadużywane przez kopaczy kryptowaluty, którzy używają WebAssembly ze względu na jego wydajność. Jednocześnie, aplikacje dla odmiany przyjazne użytkownikowi zyskują na popularności.

Wyobraźmy sobie, na przykład, całe środowiska programistyczne w chmurze, działające w przeglądarkach, kompilatory, debuggery. Przewiduje ewolucję przetwarzania obrazów i wideo dzięki wysokiej wydajności i więcej gier o wydajności konsolowej / PC w samej przeglądarce.

Co jeszcze ciekawsze, istnieje teraz możliwość portowania narzędzi, silników i aplikacji z C++ do WebAssembly, pozwalając przeglądarkom dotrzeć do całego wszechświata aplikacji i komponentów. Wydajność bliska natywnemu C++ bez żadnych dodatkowych komponentów czy plug-inów.

Warto też zaznaczyć, że ten sam kod może działać po stronie serwera i po stronie przeglądarki, ponieważ Wasm nie jest ograniczony tylko do strony klienckiej (przeglądarki). Mam nadzieję, że będziemy mogli zobaczyć pełen potencjał tej technologii, ponieważ właśnie stała się standardem.

Lyubomyr Senyuk, Director of R&D, Avenga, dzieli się swoją opinią:

Możecie pomyśleć, że Wasm to kolejny applet Java, Silverlight lub coś podobnego (bardziej nowoczesnego) co umrze wkrótce tak jak wszyscy poprzednicy, przełom polega na tym, iż Wasm jest częścią standardu i już jest wspierany przez główne przeglądarki.

Zatem Wasm zaadresuje nisze takie jak design 3D, gry i złożone narzędzia (takie jak Figma, które już używa Wasm) i umrze dopiero z HTML/CSS/JS w przyszłości, w świecie agentów AI i ludzi podłączonych do Sieci przez interfejsy neuronowe.

Felix Hassert, Director of Products at Avenga, zauważa:

Bogactwo języków programowania, które kompilują się do WebAssembly ekspotencjalnie zwiększa ilość programistów, którzy mogą pracować nad tworzeniem oprogramowania działającego w przeglądarkach, bez poświęcania i utraty ich wiedzy i doświadczenia, procesów i infrastruktury do których są przyzwyczajeni.

Aplikacje webowe ułatwiają dostęp zarówno dla użytkowników poszukujących rozrywki jak i nowych rozwiązań oraz programistów i wydawców do łatwej i pewnej infrastruktury do dystrybucji.

To powiedziawszy, dzięki wydajności Wesm będącej blisko wydajności oprogramowania zainstalowanego natywnie, i z UX jakie dają, na przykład, progresywne aplikacje webowe (PWA), uważam, że będziemy widzieć znaczący przyrost ilości i poprawę jakości oprogramowania dostarczanego przez web.

Powrót do przeglądu