本文へスキップ

SWCとは?

えすだぶりゅーしー

SWCは、Rustで実装された高速なJavaScriptTypeScriptのトランスパイラおよびバンドラーで、Babelの代替として注目されるビルドツールです。

SWC(Speedy Web Compiler)は、RustによってゼロからビルドされたJavaScriptTypeScriptコンパイルツールです。主にBabelが担ってきたJSコードの変換(トランスパイル)を、同等またはそれ以上の互換性を保ちながら大幅に高速化することを目標に開発されました。

Rustは並列処理とメモリ効率に優れており、JavaScriptで書かれたBabelと比較してトランスパイル速度が数十倍速いとベンチマークで報告されています。大規模なコードベースでのビルド時間短縮に大きく寄与し、開発体験(DX)の改善につながります。

SWCの主な機能は以下のとおりです。

  • トランスパイル:最新のJS構文・TypeScript・JSXを旧ブラウザ互換のコードに変換
  • ミニファイ:本番用コードの圧縮・最適化
  • バンドル(swcpack):モジュールの結合(開発中の機能として提供)

Next.jsはバージョン12からSWCをデフォルトのコンパイラとして採用し、ビルド速度が大幅に改善されたと報告されています。また、ViteやTurbopackなど次世代のビルドツールにも統合されており、フロントエンドビルドの高速化において重要な役割を担っています。ただし、カスタムBabelプラグインとの完全互換ではないため、移行時には確認が必要です。

使い方・例文

Next.jsプロジェクトでSWCを使うと、開発サーバーの起動やHot Module Replacementが従来より大幅に速くなります。

この用語をシェア

𝕏 でポスト LINE

最終更新:

関連用語