WebAssembly用のKotlin、α版リリース Kotlin/JSを上回るパフォーマンス継続的にアップデート予定

JetBrainsは、WebAssembly用のKotlin「Kotlin/Wasm」のα版リリースを発表した。これにより、マルチプラットフォームライブラリ「Kotlin Multiplatform」を使用して、Webアプリケーション用の宣言型ユーザーインターフェースをKotlinで作成できるようになった。

» 2024年01月15日 08時00分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 チェコのJetBrainsは2023年12月21日(現地時間)、WebAssembly用のKotlin「Kotlin/Wasm」のα版リリースを発表した。これにより、マルチプラットフォームライブラリ「Kotlin Multiplatform」を使用して、Webアプリケーション用の宣言型ユーザーインタフェースをKotlinで作成できるようになった。

 また、「Kotlin Playground」でもKotlin/Wasmをサポートするようになったため、ブラウザで直接WebAssemblyコードスニペットを書き、Kotlin/Wasmが提供する機能を確かめることも可能だ。

 Kotlin/Wasmはkotlinxライブラリ一式を導入している。このライブラリには「kotlinx-atomicfu」「kotlinx.coroutines」「kotlinx.serialization」「kotlinx-datetime」「kotlinx-io」が含まれている。

 ネットワーク対応アプリケーションを構築するためのJetBrainsフレームワークである「Ktor」もWebAssemblyに導入される。次回のリリースでは、KtorのHTTPクライアントを使用してKotlin/Wasmコードからネットワークリクエストを直接送信できるようになる。

Compose MultiplatformでKotlin/Wasmが使用可能に

 Compose Multiplatformを使うと、AndroidとiOS、デスクトップ、ブラウザをターゲットとする共有アプリケーションをビルドできる。独自の共有UIを作成し始める場合、同じようにKotlin/Wasmターゲットを実験的にサポートしているKotlin Multiplatform Webウィザードを使用してプロジェクトを生成できる。

パフォーマンス

 WebAssemblyは言語用のコンパイルターゲットとしてゼロからデザインされているため、KotlinコンパイラはソースコードをWebAssemblyバイトコードに変換できる。同社ではKotlin/Wasmに定期的にベンチマークを実行し、実行時のパフォーマンスを確認しているという。Kotlin/Wasmはまだα版のため、継続的にパフォーマンスが改善されている。下図のようにKotlin/Wasmはほぼ全てのマクロベンチマークで既にKotlin/JSのパフォーマンスを上回っている。

Kotlin/JSと比較したKotlin/Wasmのパフォーマンス(提供:JetBrains)

 同様に、Kotlin/Wasmで動作するCompose MultiplatformはJVM(Java仮想マシン)上で同じアプリケーションを実行する場合と同等の実行速度となっている。

Compose Multiplatformの相対的なベンチマーク時間(低いほど優れている)(提供:JetBrains)

今後のアップデート

 Kotlin/Wasmは、活発に改善と強化が行われているという。

 リリース直後のKotlin/Wasmのデバッグサポートには制限があり、今後はその機能を改善していく予定だ。Webをターゲットとする際にはバンドルのサイズが重要であることも同社は認識しているとし、特にCompose Multiplatformプロジェクトを対象にコンパイラが生成する出力の最適化を進めるという。

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。