Windows 10 będzie wspierał asm.js: pomysł Mozilli na wydajny kod w przeglądarce naprawdę się przyjął

Strona głównaWindows 10 będzie wspierał asm.js: pomysł Mozilli na wydajny kod w przeglądarce naprawdę się przyjął
19.02.2015 12:24
Windows 10 będzie wspierał asm.js: pomysł Mozilli na wydajny kod w przeglądarce naprawdę się przyjął
bDUohstO

Niecałe dwa lata temu Mozilla zaprezentowała swoją odpowiedź nagoogle'owego Native Clienta – nowy-stary język programowaniadla przeglądarek, asm.js, będący ściśle zdefiniowanym podzbioremJavaScriptu. Kod wynikowy w asm.js nie jest pisany ręcznie, to wynikprzekształcenia kodu C/C++ przez skrośny kompilator Emscripten.Efekty są niesamowite,wydajność aplikacji webowych w asm.js zbliżyła się do wydajnościaplikacji natywnych, o ile uruchomić je na wspierającej niezbędneoptymalizacje silnika skryptowego przeglądarce. Pierwszy wsparciezapewnił oczywiście Firefox (w wersji 22), z czasem do projektuzdecydowało przyłączyć się też Google, wprowadzając niezbędne zmianyw Chrome 28.

bDUohsth

Do grona przeglądarek wspierających optymalizacje asm.js dołączydomyślna przeglądarka Windows 10. Deweloperzy Microsoftupoinformowali,że idąc za wyrażonym na platformie User Voice głosem użytkowników,wprowadzi do silnika Chakra (odpowiedzialnego m.in. za uruchamianiekodu JavaScriptu w w Internet Explorerze) obsługę asm.js. Podkreślająprzy tym, że sama idea nie jest im obca, zwiększenie możliwościsilnika skryptowego i wydajności było głównym celem podczas prac nadChakrą (wprowadzoną wraz z Internetem Explorerem 9).

Wygląda na to, że aplikacje w asm.js tworzone dla Firefoksa iChrome, w szczególności silniki gier, takie jak Unreal Engine 3 czyUnity, będą działały w nowej przeglądarce Microsoftu bezkonieczności jakichkolwiek modyfikacji, wykorzystywane w nichinterfejsy WebGL i Web Audio albo już zostały zaimplementowane wzgodzie ze specyfikacją, albo doczekają się pełnej implementacji wrazz wydaniem Windows 10. Duże znaczenie dla deweloperów z Redmond majednak też fakt, że asm.js nie skreśla starszych wersji InternetExplorera, działających na starszych wersjach Windows – jako żekod ten jest po prostu podzbiorem JavaScriptu, uruchomi się (choć nietak szybko) także w IE10 czy IE11.

Nie wiadomo, czy optymalizacje trafią tylko do debiutującego wWindows 10 Spartana, czy też także do towarzyszącego mu w imięzachowania kompatybilności Internet Explorera 12, choć należy sądzić,że tak – silnik skryptowy to coś, co obie przeglądarki miałybyw pełni współdzielić (w przeciwieństwie do silnika renderującego,Spartan ma korzystać z jego „odchudzonej” wersji).

The Humble Mozilla Bundle: Powered by asm.js

Dla Mozilli to wielkisukces. O ile Google nie zdołało do swojego Native Clientaprzekonać żadnego innego producenta przeglądarek, to asm.js okazujesię być drogą akceptowalną dla wszystkich. Możliwość uruchamiania zniemalnatywną szybkością kodu przetłumaczonego z C/C++ bezpośrednio wnajpopularniejszych przeglądarkach zainteresujeprzede wszystkim producentów bardziej wymagających gier indie,poszukujących alternatywnych platform dystrybucji swoich tytułów. WWWjako taka platforma jest o tyle atrakcyjna, że pozwala pominąćwszystkich pośredników – jedyne co jest potrzebne, to stronainternetowa z kodem gry i odwiedzający ją użytkownik.

bDUohstj

Oczywiście możliwości asm.js nie kończą się tylko na grach –dobrym przykładem tego, na co język programowania Mozilli pozwalaaplikacjom webowym może być choćby eksplorator fraktali HTML5Fractal,z którego w przeglądarkach bez wsparcia dla asm.js praktycznie nie dasię korzystać.

Udostępnij:
bDUohsuf