Electronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達

今回は「Electronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達」についてご紹介します。

関連ワード (到達、登場予定、設計等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


WindowsやmacOS、Linuxなどのクロスプラットフォーム対応のデスクトップアプリ開発を容易にするフレームワークとして高い人気を持つフレームワークが「Electron」です。

ElectronはChromiumとNode.jsを用いることで、HTML/CSS/JavaScriptのWebテクノロジーによってデスクトップアプリケーションを開発できるのが最大の特徴です。

いまやElectronは、Visual Studio CodeやMicrosoft Teams、Slack、GitHub Desktop、そして最近話題のNotionなど、さまざまなアプリケーションに採用されています。

このElectronの優れた特徴を備えつつ、よりメモリ消費量が小さくファイルサイズもコンパクトで、高いセキュリティを備え、柔軟なライセンスを実現しようと開発されたのが「Tauri」です。

fig

Tauriは、時期未定ながらiOSとAndroidにも対応する計画があります。これが実現すれば、モバイルも含めたクロスプラットフォーム対応のフレームワークとなります。また、バックエンドにDenoをバインドできるようにする計画もあります。

Tauriはこれまでベータ版として開発が続けられてきましたが、開発チームは先月にリリース候補版への到達を発表しました。今年第1四半期中には正式版となる安定版が登場予定ですので、予定通りに開発が進めば、今月中にWindows、macOS、Linuxに対応した正式版がリリースされるでしょう。

Read all about the release of Tauri's 1.0.0-rc.0 https://t.co/GrGtvDiUdh

— Tauri (@TauriApps) February 10, 2022

TauriはElectronの代替を目指す軽量なフレームワーク

TauriはRust言語で開発されており、Electronと比較してファイルサイズもメモリ容量も小さい点が特徴であると開発チームが強調しています。

GitHubにはElectronとの比較表が示されています。それによるとLinux版のインストールサイズがElectronで52.1MBのところ、Tauriは10分の1以下のわずか3.1MB。同じくLinux版でのメモリ消費量はElectronが462MBのところ、Tauriは半分以下の180MBとなっています。

起動時間もElectronの0.80秒に対してTauriは0.39秒です。

これはTauriの開発チームによる比較なのでその分を割り引いて見るべきですが、それでもTauriが軽量であることは見て取れます。

Tauriがこのように軽量なのは、最初から効率よくリソースを使うように設計されてRustで実装されていることに加えて、Electronとは異なりChromiumを組み込んでいないことが大きな理由として挙げられるでしょう。

Electronはフロントエンドの基盤としてChromiumを組み込んでいますが、Tauriでは代わりにOSが備えているWebViewの機能を、抽象化レイヤのwry経由で呼び出すことで、クロスプラットフォームを実現しつつChromiumを不要にしています。

OSネイティブのWebView機能は、WindowsではWebView2、macOSではWebKit、Linuxではgtk-rsがそれに該当します。ただしすべてのプラットフォームでChromiumを使うElectronと比べると、プラットフォームごとに微妙にレンダリング結果が異なる、といったことが発生する可能性はありそうです(互換性についてはかなり改善されては来ましたが)。

フレームワーク内にChromiumを組み込まないことでセキュリティも向上すると、Tauri開発チームは説明しています。例えば、Chromiumに何らかの脆弱性が見つかった場合、Chromiumが組み込まれたフレームワークであれば、Chromiumで脆弱性が修正されたあとでフレームワークに対する修正を行い、その後にパッチを配布しなければなりません。

これは脆弱性の発見からパッチの配布までのステップ数が多く、時間がかかります。

一方、フレームワーク内にChromiumなどを組み込んでいなければフレームワーク側で対応する必要がなく、WebView側の脆弱性対応が済めばそれで終わりです。

Tauriの開発チームはこのように、自分たちがElectronの課題だと考えている部分の改善を反映させた設計と実装をTauriで実現しようとしています。

先日発表された「The State of JS 2021」では、まだTauriの人気はそれほどでもないようなのですが、正式版のリリースが近づいていることもあり、人気の高いElectronを代替し得る存在として、これから注目されるフレームワークになるのではないでしょうか。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
「ジョーシス」の販路拡大とIT人材不足の解消に寄与–NRIとマクニカ、ジョーシスと提携
IT関連
2023-02-24 13:50
業務の自動化とデジタル化、その関係と本質的な意味
IT関連
2022-08-10 05:50
リコーと九州大学共同開発によるフィルム形状の有機薄膜太陽電池のサンプルが9月提供開始、「充電のない世界」目指す
EnviroTech
2021-08-20 09:37
感染予防を分かりやすく解説した「はたらく細胞」、学校や病院に無償で 英語版とヒンディー語版も配信
くらテク
2021-06-20 08:57
マイクロソフト、クラウドPCが起動する「Windows 365 Boot」やオフライン対応の「Windows 365 Offline」のデモ動画を公開
Microsoft
2022-04-12 21:59
AIで古代の巻物を分析–2000年前の噴火で炭化した文書を解読する
IT関連
2024-03-09 02:56
麺食、セミオーダー型の労務管理システムを全社導入–入社手続きなどを電子化
IT関連
2023-07-07 04:26
Twitter版Clubhouseの「Spaces」、ブラウザ版からも参加可能に
企業・業界動向
2021-05-29 06:25
DeepMindが作った平凡な性能のAI「Gato」、何がすごいのか
IT関連
2022-05-26 20:07
HPEがNutanix買収に向けて交渉中と米ブルームバーグが報道。縮小するオンプレミス市場での買収の思惑とは?
HPE
2022-12-05 21:03
トランプ氏がソーシャルメディア企業を訴える、「訴訟」という新たなツイートで世界に発信か
ネットサービス
2021-07-09 23:43
筑波大1年生が爆速開発した“オレオレ授業DB”が大学公認に 有志で運用を継続する方針
ネットトピック
2021-05-02 18:39
日立系技術商社の瑞穂、ランサムウェア対策でイミュータブルストレージを導入
IT関連
2024-01-13 09:42
グーグル、「Android Studio」「Jetpack Compose」など開発ツールの改善を発表
IT関連
2022-05-14 04:57