Vad det är och hur man skapar Hello World –

Vad är WebAssembly

WebAssembly är ett front-end programmeringsspråk som först tillkännagavs 2015. Under 2016 hölls den första demon av detta språk i Firefox, Chromium, Google Chrome och Microsoft Edge lanserar en populär demo som heter “Unity’s Angry Bots.”

Detta programmeringsspråk är förkortat Vasmer , använder portabelt binärt kodformat, bytecode). Detta tillåter klientskript att köras helt i webbläsaren. Det är ett programmeringsspråk på låg nivå och även om det ursprungligen skapades som ett kompileringsmål för C- och C++-kod , den är också kompatibel med andra språk som Go och Rust.

Detta programmeringsspråk visade sig vara betydligt snabbare än andra programmeringsspråk som JavaScript. Dessutom har den praktiskt taget ingen begränsning i funktionalitet, eftersom den låter dig köra nästan vilken skrivbordskod som helst direkt i webbläsaren. Och med nästan inhemsk hastighet.

WASM skapades inte för att ersätta JavaScript eller något annat gränssnittsspråk, utan snarare för att komplettera dem. Webbläsare kan köra det samtidigt och kan ladda moduler byggda med WebAssembly i JavaScipt-applikationer.

För närvarande ingår WebAssembly 1.0 redan i motorerna Firefox, Chrome, Safari och Edge.

WASM-kapacitet

Det finns så många programmeringsspråk som används idag att det är svårt att hitta kritiska skillnader mellan dem alla. Men WebAssembly har främst fokuserat på att skilja sig från sina konkurrenter på två sätt. Å ena sidan talar vi om snabbt och effektivt ett programmeringsspråk, ett redan lågnivåspråk som gör att vi kan köra binär kod från webbläsaren. Genom att behålla mellanhänder eller tolkar exekveras koden nästan omedelbart på hårdvaran och når nästan sin egen hastighet.

Å andra sidan förlitade sig även detta språk på säkerhet … WASM använder tekniker för säker minnesladdning (sandboxing) för att isolera körtiden från resten av systemet. Denna säkra miljö kan till och med implementeras i befintliga virtuella JavaScript-maskiner, vilket ger ytterligare skydd mot andra element. Det här språket kommer att tillämpa systemets säkerhetspolicyer samt de inbyggda webbläsarbehörigheterna.

Naturligtvis är allt relaterat till detta programmeringsspråk öppen … Dess instruktioner kan skrivas i vanlig text (vi behöver inte skriva i ettor och nollor) och kan felsökas, testas, modifieras och experimentellt med den utan problem. Dessutom är den utformad för att hålla webben öppen, kompatibel med samma API:er som JavaScript och bakåtkompatibel med tidigare versioner.

Hur man programmerar med WebAssembly

Detta programmeringsspråk är öppen källkod, så vem som helst kan använda det till vad som helst. Även om det anses vara ett lågnivåspråk är det inte så svårt att använda.

Skiljer tre stater

På tal om detta programmeringsspråk måste vi först och främst skilja mellan tre olika tillstånd:

  • Källa … Programkod som sådan. Denna kod är vanligtvis skriven på ett annat programmeringsspråk, så det är inte svårt att skapa program eller moduler med den. I detta skede kan vi välja önskat programmeringsspråk om det är kompatibelt. De vanligaste är C++ och Rust.
  • WebAssembly Bytecode … När vi kompilerar programmet måste vi välja att vi vill göra det i detta format. Vår programmeringsmiljös egen kompilator kommer att ansvara för att använda IDE:s instruktioner för att konvertera ett annat språks kod till det formatet. Vi kommer att få en .wasm-fil.
  • Maskinkod … När vi har en kompilerad WASM-fil öppnar vi den i en webbläsare. Och det är den som är ansvarig för att översätta koden direkt till maskinspråk, det vill säga till binärt.

Dessutom har WebAssembly ett mellanspråk känt som WASM-text. Detta språk har blivit likt högnivåprogrammeringsspråket för WASM. Filer skrivna på detta språk sparas i filer med filtillägget WAT, och vi behöver ett verktyg som heter ” Binary WebAssembly Toolset “För att konvertera den till en .wasm-fil. Det används vanligtvis inte eftersom det är mycket mer komplext än andra språk och i slutändan inte värt det. Men det finns, och det borde du veta.

Skapar WebAssembly WASM

Skapa vårt första program

Det finns många sätt att kompilera ett WebAssembly-program eller -modul. Vi rekommenderar till exempel att använda Emscripten SDK, som vi kan ladda ner härifrån.

Därefter behöver vi vår modul skriven på detta programmeringsspråk. Vi kommer att använda “Hello World”-exemplet skrivet i C. Vår hello.c-fil kommer att ha följande text:

#include int main () {printf (“Hello Worldn”);}

När vår fil är skriven i C kommer vi att använda ” Emscripten »Verktyg för att överföra den till WASM. Vi kan köra Emscripten från Python eller ännu bättre, från Windows Subsystem för Linux. Om vi ​​programmerar från Windows och inte vill använda Linux måste vi leta efter en annan likvärdig kompilator. För att göra detta med Emscripten öppnar vi Windows-konsolen och kör det här kommandot i den:

emcc hello.c -s WASM = 1 -o hello.html

Parametern “WASM = 1” är ansvarig för att indikera för programmet att vi vill kompilera koden på detta språk. Resultatet efter att ha utfört instruktionerna blir:

  • Den binära filen hello.wasm.
  • JavaScript-fil som innehåller de nödvändiga beroenden för att översätta från C till WASM: hello.js.
  • Hello.html-filen som krävs för att öppna wasm-filen i en webbläsare och kompilera den.

Genom att helt enkelt köra “hello.html” kommer vi att köra koden i WebAssembly.

Relaterade artiklar

Back to top button