チャット・通話サービス「Discord」の共同創業者兼CTO、Stanislav Vishnevskiy氏は、Discordアプリをプログラミング言語「Rust」で全面的に作り直す計画を明らかにしました。デスクトップ版の「Electron」とモバイル版の「React Native」を廃止し、より軽いアプリを目指します。
デスクトップはGPUI、モバイルはネイティブUIへ
現行のデスクトップ版は、Web技術でアプリを作る「Electron」製です。Chromiumを内包する構造のため、メモリ使用量が大きくなりがちでした。
新アプリでは基盤をRustへ移し、画面描画にはGPUでUIを描くRust向けフレームワーク「GPUI」を採用します。同氏は、同じくRustを使うフレームワーク「Tauri」ではないと明言しています。
モバイル版もReact Nativeを廃止します。UIは各OSのネイティブのまま、アプリの中身のコードをRustでデスクトップ版と共有する設計です。なお、見た目や基本的な操作方法は現行版から変えない方針です。
開発ビルドではメモリ使用量290.2MB
同氏の投稿画像では、開発中の新しいアプリ「Discord Phoenix」のメモリ使用量が290.2MBと表示されています。
ゲームとDiscordを同時に起動するユーザーにとって、メモリやCPUの負荷が減ることは大きな改善点です。
ただし、これは開発中ビルドの数値であり、現行版と同条件で比較した公式ベンチマークではありません。具体的な改善率も公表されていません。
Rustの採用は2018年から
DiscordがRustを使うのは今回が初めてではありません。2018年から導入を進め、サーバー基盤や音声関連技術、現行アプリの一部はすでにRust製です。2020年には、既読状態を管理するサービスをGoからRustへ移行した事例を公式技術ブログで紹介しています。
今回の計画は、その採用範囲をアプリ全体に広げるものです。
新しいアプリの提供開始日は発表されていません。同氏は、近いうちにユーザーを対象としたテストを始めたいとの意向を示しています。
情報元: