きみたちは一度これを読んだほうがいい
Rust GUI の決定版! Tauri を使ってクロスプラットフォームなデスクトップアプリを作ろう
Chapter 03 Tauri の概要
https://zenn.dev/kumassy/books/6e518fe09a86b2/viewer/168468
より
アーキテクチャ
Tauri のアーキテクチャを図示すると、次のようになります
https://storage.googleapis.com/zenn-user-upload/e215aef57b0a-20220610.png
Core Process はアプリケーション全体のライフサイクル管理を行ったり、 OS のインターフェース(メニューや通知など)の操作、 WebView Process の管理などを行います。
Core Process のコードは Rust で記述されるので、標準ライブラリも crate.io で公開されているライブラリも利用できます。 Tauri は非同期ランタイムとして tokio を利用しているので、非同期 Rust も使えます! Rust のコードはアプリケーションのビルド時にネイティブコードにコンパイルされるので、高速に動作します
WebView Process は Web コンテンツのレンダリングを行うプロセスです。通常の Web ページと同様に、 index.html, JavaScript, CSS から構成されて、 wry にラップされた WebView で動作します。
Tauri の JavaScript API を利用することで、 Core Process と通信したり、ファイルシステムにアクセスしたり、通知を表示する、などの操作が可能です。
WebView Process から WebView のサンドボックスを超えていろいろな操作できてしまうとセキュリティ上問題になることがあります。そこで、 tauri では JavaScript API で利用する API を allowlist に明示的に記述する必要があります。 Electron では preload スクリプトによって Renderer Process に公開する API を制限できましたが、同様の仕組みは allowlist で実現できます。
Tauri でアプリケーションを作ると Electron とは違い、 Chromium と Node.js 実行環境をバンドルする必要がないので、アプリケーションのサイズを小さく保つことができます
探検
Rust part15
■ このスレッドは過去ログ倉庫に格納されています
802デフォルトの名無しさん
2022/06/21(火) 10:12:25.82ID:D95D9dWE■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 人間の髪の毛は押し出されるのではなく「引っ張られる」ことで成長する [少考さん★]
- グリコが「ポッキー」など600万個自主回収 チョコに香辛料の香り [少考さん★]
- (社説)スパイ防止法の策定 民主社会の基盤を崩さないか:朝日新聞 [少考さん★]
- 【国内総生産】実質GDP、年2.3%減に下方修正 設備投資落ち込み 7~9月期改定値 [ぐれ★]
- 世界的DJ沖野修也、高市早苗首相のアーティスト海外展開支援めぐり疑問「補償が先ではないですか?」 ★2 [muffin★]
- パナソニックHD、野球部休部へ 来期、構造改革の一環で [征夷大将軍★]
- 愛国者「日本が好きで何が悪いの?」 [834922174]
- 地方創生☆チクワクティクスでひなビタお🏡を萌え起こしめう!
- 高市「減反します」→叩かれたため「多様なコメの増産を進める!」と言い始める😮 [931948549]
- 元外交官や大学教授「原因は高市が作った。発言を撤回せよ」記者会見を開く [931948549]
- 🏡👊😅👊なにここ珍百景👊😅👊🏡
- 高市首相「多様なコメの増産を進める」 [256556981]
