LINEで個別相談
プログラミング 2026-04-08

WebAssembly(Wasm)

ブラウザ上でネイティブに近い速度で実行できるバイナリ命令形式。C・C++・Rustなどのコードをブラウザで動かすことができ、ゲーム・動画編集・CADなど計算負荷の高いWebアプリに使われる。

WebAssembly(Wasm)とは?

WebAssembly(Wasm)は、ブラウザ上で実行できるバイナリ命令形式です。JavaScriptの代替ではなく補完として設計されており、JavaScript単体では難しい計算負荷の高い処理をネイティブに近い速度で実行できます。2019年にW3Cの標準となりました。

JavaScriptとの違い

項目JavaScriptWebAssembly
形式テキストバイナリ
実行速度速いより速い(最大10〜20倍)
言語JavaScript/TypeScriptC・C++・Rust・Go等からコンパイル
DOM操作✅❌(JSを経由する必要がある)
デバッグ容易やや難しい

主なユースケース

  • ゲームエンジン: Unity・Unreal EngineのWebGL出力
  • 動画・画像処理: FFmpegをブラウザで実行(ffmpeg.wasm)
  • CAD・3Dモデリング: AutoCAD Webなど
  • 暗号処理: 高速な暗号計算
  • 言語ランタイム: Python・Ruby等をブラウザで実行(Pyodide等)

開発フロー(Rustの例)

# Rustコードをwasmにコンパイル
wasm-pack build --target web

# JavaScriptから呼び出し
import init, { add } from './my_wasm.js';
await init();
console.log(add(1, 2)); // 3

まとめ

WebAssemblyはブラウザの可能性を大きく広げる技術です。通常のWebアプリ開発で直接使う機会は多くありませんが、パフォーマンスクリティカルなケースでは強力な選択肢です。

関連する用語 (プログラミング)

全33件を見る

SSG(静的サイトジェネレーター)

ビルド時にすべてのページをHTMLとして事前生成する手法。サーバーが不要なため高速・安全・低コストで、ブログ・ドキュメントサイト・ランディングページに最適。

詳しく読む

IT用語: デザインパターンとは|GoFの23パターンと代表例

ソフトウェア設計でよく直面する問題への定番解決策「デザインパターン」の概念とシングルトン・ファクトリー等の代表パターンを解説。

詳しく読む

ヘッドレスCMS

表示用フロントエンド(ヘッド)を持たず、コンテンツ管理とAPIによるデータ提供に特化したCMS。Next.js・Astro等の任意のフロントエンドと組み合わせてJAMstack構成を実現する。

詳しく読む

ESLint

JavaScriptとTypeScriptのコードを静的解析し、潜在的なバグや規約違反を検出するリンター。プロジェクト全体で一貫したコードスタイルを強制し、コードレビューの負担を軽減する。

詳しく読む

モノレポ(Monorepo)

複数のプロジェクトやパッケージを1つのGitリポジトリで管理する手法。コードの共有・一貫したCI/CD・依存関係の統一が容易になる。Turborepo・Nx・Yarnワークスペースで実装される。

詳しく読む

C# (シーシャープ)

Microsoft社が開発した、エンタープライズ(企業向け)システムからゲーム開発(Unity)まで広く使われる万能言語。

詳しく読む

Sponsored Link

バグ・要望を報告する