一覧に戻る
Lv.3

WebAssembly

WebAssembly

Webブラウザ上でプログラムを高速に動かすための技術

名前のヒミツ

Web(ウェブ)と、人間が読める形よりも低水準でコンパクトな命令体系を意味するAssembly(アセンブリ)を組み合わせた言葉だよ。 Webブラウザ上で効率よく読み込んで実行できるように設計された、コンパクトなプログラム形式という意味が込められているんだ。

簡単に説明すると

WebAssemblyは、Webブラウザ上でプログラムを高速に動かすための技術だよ。 今までブラウザではJavaScriptという言語が主役だったけど、特に重い処理をスムーズに動かすために作られたんだ。 C言語やRustといった別の言語で作ったプログラムを、ブラウザで動かせる形式に変換して使うのが特徴だよ。 JavaScriptなどのWeb技術と組み合わせることで、3Dゲームや動画編集アプリみたいな本格的なソフトを、ブラウザ上でスムーズに動かせるようになるんだよ。

くわしく見てみよう!

WebAssemblyとは、Webブラウザ上でプログラムを高速に実行するための技術のことだよ。
略して「Wasm(ワズム)」と呼ばれることも多いんだ。

Webページを動かすときは、昔からJavaScriptというプログラミング言語が使われてきたんだ。
現代のJavaScriptは十分に高速化されているものの、動画の処理や3Dグラフィックスといった特に重い処理や複雑な計算では、より高い性能が求められることもあるんだよ。

そこでWebAssemblyを活用すると、あらかじめブラウザが読み込みやすいバイナリ形式に変換されているため、JavaScriptだけで処理するよりも効率的に実行できることが多いんだ。

さらにすごいのは、C言語やRustといった別のプログラミング言語で書いたコードを、WebAssemblyに変換してブラウザ上で動かせることだよ。
これによって、本格的な3Dゲームや動画編集ソフトといった重い処理も、Webブラウザ上で実用的に動かせるようになってきたんだ。

JavaScriptの代わりになるものではなく、お互いに協力して働くように作られているんだよ。
画面の操作などはJavaScriptに任せて、裏側の重い計算だけWebAssemblyに担当させる、という使い分けができるんだ。