公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
Web上の実行環境
https://play.rust-lang.org
日本語の情報
https://rust-jp.rs/
※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/
※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust
※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/
※C++との比較は専用スレへ
C++ vs Rust
https://mevius.5ch.net/test/read.cgi/tech/1619219089/
※次スレは原則>>980が立てること
前スレ
Rust part14
https://mevius.5ch.net/test/read.cgi/tech/1644596656/
探検
Rust part15
■ このスレッドは過去ログ倉庫に格納されています
2022/05/12(木) 18:28:20.99ID:cuIcFT6k
736デフォルトの名無しさん
2022/06/20(月) 07:31:28.70ID:iAqd5FsI シャドーイングは許容できて関数のオーバーロードが許容できない理由ってなんだろう
737デフォルトの名無しさん
2022/06/20(月) 07:34:05.79ID:E2oosySA738デフォルトの名無しさん
2022/06/20(月) 07:44:20.63ID:E2oosySA >>736
シャドーイングは同時に存在できるのが一つだけで曖昧さがなくプログラミングにおいてプラス効果
オーバーロードは同時に異なるものが存在できるため可読性を下げたりミスを起こす機会を生じさせてマイナス効果
シャドーイングは同時に存在できるのが一つだけで曖昧さがなくプログラミングにおいてプラス効果
オーバーロードは同時に異なるものが存在できるため可読性を下げたりミスを起こす機会を生じさせてマイナス効果
739デフォルトの名無しさん
2022/06/20(月) 10:29:58.07ID:anfwvwwH >>735
読む時にはどのオーバーロードが呼ばれるのかを確認するのが面倒
RustだとT, &T, &mut T違いもあるから他の言語よりもさらに面倒
メリットよりデメリットのほうが大きいと感じる人が多いんじゃないかな
デフォルト引数/オプション引数/キーワード引数はいずれ導入して欲しい
乱用されるとAPIが汚くなるがオーバーロードほどのデメリットはないと思ってる
読む時にはどのオーバーロードが呼ばれるのかを確認するのが面倒
RustだとT, &T, &mut T違いもあるから他の言語よりもさらに面倒
メリットよりデメリットのほうが大きいと感じる人が多いんじゃないかな
デフォルト引数/オプション引数/キーワード引数はいずれ導入して欲しい
乱用されるとAPIが汚くなるがオーバーロードほどのデメリットはないと思ってる
740デフォルトの名無しさん
2022/06/20(月) 10:47:53.81ID:1agQsnkM 真理値なんてどんなアホが訳してんだ
741デフォルトの名無しさん
2022/06/20(月) 11:11:29.76ID:G0GSIi1k 元の英語から違うので訳の問題ではありません (truth value)
742デフォルトの名無しさん
2022/06/20(月) 11:17:59.13ID:c9A58FBc logical values 論理値
truth values 真理値
true or false values 真偽値
Boolean values ブール値
ブール値じゃ分かりにくいと仮定して論理値、真理値、真偽値のどれを選ぶかってこと
the book日本語訳の人はRustの文脈での分かりやすさよりも土台となってる分野で広く使われてる訳語がいいと判断することが多い印象
truth values 真理値
true or false values 真偽値
Boolean values ブール値
ブール値じゃ分かりにくいと仮定して論理値、真理値、真偽値のどれを選ぶかってこと
the book日本語訳の人はRustの文脈での分かりやすさよりも土台となってる分野で広く使われてる訳語がいいと判断することが多い印象
743デフォルトの名無しさん
2022/06/20(月) 11:29:41.63ID:qsA991ej まぁプログラマーでござい(ドヤッ!な勘違いの陰キャチー牛の癖に英語読めないポンコツなの日本人くらいだからなwww
744はちみつ餃子 ◆8X2XSCHEME
2022/06/20(月) 12:24:24.66ID:6BcBi/VL 同じ意味とされることもあるが、若干のニュアンスの差もあると思うんだよな。
ブールはブール代数から取ってるんだから当然に代数的な操作に使うという感覚があるし、
真理値は論理学の方面で抽象的な概念 (命題とか集合とか) に対応付く場合もある気がする。
個人的には論理値が最も中立というか、ただ真と偽の値を持つものという雰囲気を感じる。
ブール ⊂ 真理値 ⊂ 論理値 な感じ。
ブールはブール代数から取ってるんだから当然に代数的な操作に使うという感覚があるし、
真理値は論理学の方面で抽象的な概念 (命題とか集合とか) に対応付く場合もある気がする。
個人的には論理値が最も中立というか、ただ真と偽の値を持つものという雰囲気を感じる。
ブール ⊂ 真理値 ⊂ 論理値 な感じ。
745デフォルトの名無しさん
2022/06/20(月) 12:43:05.08ID:G0GSIi1k たかが二値論理の値の型でしかないものを誰がboolだのbooleanだの呼び始めたのかと思って調べたらALGOL60だった
746デフォルトの名無しさん
2022/06/20(月) 12:43:22.11ID:zDrv1zgC 真理値だけは3値以上の場合も含むからちょっと意味が広い感じはする
747デフォルトの名無しさん
2022/06/20(月) 13:11:27.43ID:bsAvnwWF 関数オーバーロードをありがたがってるのはジャバの連中だけ
748デフォルトの名無しさん
2022/06/20(月) 15:32:26.58ID:nUFjxYTv 論理値は非古典論理の値も含むからさらに広いな。
749デフォルトの名無しさん
2022/06/20(月) 15:34:13.37ID:rudBfZT/750デフォルトの名無しさん
2022/06/20(月) 16:12:28.65ID:Wp6+mQEy751デフォルトの名無しさん
2022/06/20(月) 16:33:57.18ID:vXHoc6MR どうでもいいけどwasmerがaarch64 完全対応したということで、rust+wasm+wasmerでcliを試してみたけど完全にただのjavaで草生えた
752はちみつ餃子 ◆8X2XSCHEME
2022/06/20(月) 16:55:48.44ID:6BcBi/VL Wasm は JVM より低レイヤ寄りだから設計思想は違うんだが……。
でも Java がやってた領域をかなり奪うとは思う。
Android で JVM を使っている部分を Wasm に置き換えたような OS とかもその内に出てくるんじゃないかね?
でも Java がやってた領域をかなり奪うとは思う。
Android で JVM を使っている部分を Wasm に置き換えたような OS とかもその内に出てくるんじゃないかね?
753デフォルトの名無しさん
2022/06/20(月) 17:33:23.64ID:ib2o9qWW 個人的にWasmよりもTauriの方が開発環境構築がめちゃ楽でシンプルだから好き
クロプラの一番の課題って今も昔も設定の煩わしさだよね俺はconfigマスターになりたいわけじゃねーんだよ!
モバイル対応がまだだけどちゃんと予定はあるからTauriが流行ってほしいな
クロプラの一番の課題って今も昔も設定の煩わしさだよね俺はconfigマスターになりたいわけじゃねーんだよ!
モバイル対応がまだだけどちゃんと予定はあるからTauriが流行ってほしいな
754デフォルトの名無しさん
2022/06/20(月) 17:52:06.79ID:cgMFd80D wasmとtauriって別にそういう競合するポジションとかじゃなくね?
755デフォルトの名無しさん
2022/06/20(月) 17:55:14.20ID:JDT/MbKD Tauriはただのwasmのレンダラーだよ。Chromium内蔵をやめて実装をRustにしたElectron。
wasmerはレンダラーしないwasm実行環境。
wasmerはレンダラーしないwasm実行環境。
756デフォルトの名無しさん
2022/06/20(月) 17:56:48.16ID:E2oosySA757はちみつ餃子 ◆8X2XSCHEME
2022/06/20(月) 18:19:59.87ID:6BcBi/VL >>756
論理和・論理積に対応する英語は logical disjunction / logical conjunction であって、 logical or / logical and ではない。
(でも演算子として OR / AND を使った表記をすることはよくあるし……。 カジュアルな場面では曖昧だったりするのかな?)
logical or / logical and は bitwise or / bitwise and と区別するために新しく作られたプログラミング用語として考えるべきで、
もちろん過去からの様々な分野の用語を踏襲してはいるにしてもあまり対応づけて考える必要はないと思う。
bool は人名 (固有名詞) に由来するんだからそのままブール値と訳すのに一票。
論理和・論理積に対応する英語は logical disjunction / logical conjunction であって、 logical or / logical and ではない。
(でも演算子として OR / AND を使った表記をすることはよくあるし……。 カジュアルな場面では曖昧だったりするのかな?)
logical or / logical and は bitwise or / bitwise and と区別するために新しく作られたプログラミング用語として考えるべきで、
もちろん過去からの様々な分野の用語を踏襲してはいるにしてもあまり対応づけて考える必要はないと思う。
bool は人名 (固有名詞) に由来するんだからそのままブール値と訳すのに一票。
758デフォルトの名無しさん
2022/06/20(月) 18:37:04.96ID:E2oosySA >>757
まずRustを含めてプログラミング用語の話においてのみboolが出てくるのだから他へ話を広げる必要なし
次にbitwise andに対してboolean andと言わずにlogical andと用いられているのはlogicalが説明としても用語としても妥当であるため
日本語としてもカタカナ訳語を使う必要はなく論理値や論理演算子でよいのではないかな
まずRustを含めてプログラミング用語の話においてのみboolが出てくるのだから他へ話を広げる必要なし
次にbitwise andに対してboolean andと言わずにlogical andと用いられているのはlogicalが説明としても用語としても妥当であるため
日本語としてもカタカナ訳語を使う必要はなく論理値や論理演算子でよいのではないかな
759デフォルトの名無しさん
2022/06/20(月) 18:41:04.35ID:cgMFd80D 自転車置き場の議論楽しいんんねええええ
760デフォルトの名無しさん
2022/06/20(月) 18:45:53.95ID:fDP2JAl4 Tauriのモバイル対応はwasmのUIフレームワークの整備が進んでいないから、まだいいかな
このままモバイル対応しても、せいぜいReact Native アプリのバックエンドがwasmになって実行速度を少し改善するくらい
全てはWASM実装可能なUIフレームワークの成長次第だから、Yewは頑張ってくれ!
このままモバイル対応しても、せいぜいReact Native アプリのバックエンドがwasmになって実行速度を少し改善するくらい
全てはWASM実装可能なUIフレームワークの成長次第だから、Yewは頑張ってくれ!
761デフォルトの名無しさん
2022/06/20(月) 18:51:29.68ID:vXHoc6MR もしreact 自体をウェブアセンブリとしてビルドできたら、、革命起きそう
762デフォルトの名無しさん
2022/06/20(月) 19:08:40.42ID:MJF5Q/rm763デフォルトの名無しさん
2022/06/20(月) 19:10:28.51ID:Lqu2R1w+ Reactはもういいよウェブベースのクロプラフロントエンドフレームワークの問題を凝縮した実装だから早く消えてほしい
ライフサイクルと状態管理を開発者に丸投げすることを正当化させた罪は重い
MSのオールインワンな開発環境がエンタープライズ分野で今でも支持される理由ってここだと思う
ライフサイクルと状態管理を開発者に丸投げすることを正当化させた罪は重い
MSのオールインワンな開発環境がエンタープライズ分野で今でも支持される理由ってここだと思う
764デフォルトの名無しさん
2022/06/20(月) 19:13:28.43ID:j7veV6LL MSのweb開発フレームワークとプラットフォームはくそじゃん
765デフォルトの名無しさん
2022/06/20(月) 19:27:45.70ID:JN5oCIkY766デフォルトの名無しさん
2022/06/20(月) 21:40:21.97ID:W1rh1Xym >>755
ん?言ってる意味がわからないんだけどTauriのUIレンダリングプロセスはJS/TS/ReactなんかのウェブベースのフロントエンドFWだが?
Chromiumやnode.jsをバイナリに含めずプラットフォームのWebView(WenKit)を使うからサイズが小さいのだが?
レンダラーがWasmってどういうこと?具体的かつ納得できる説明よろ
ん?言ってる意味がわからないんだけどTauriのUIレンダリングプロセスはJS/TS/ReactなんかのウェブベースのフロントエンドFWだが?
Chromiumやnode.jsをバイナリに含めずプラットフォームのWebView(WenKit)を使うからサイズが小さいのだが?
レンダラーがWasmってどういうこと?具体的かつ納得できる説明よろ
767はちみつ餃子 ◆8X2XSCHEME
2022/06/20(月) 21:43:08.29ID:6BcBi/VL DOM (またはそれの元になる html や JavaScript とかも含むのかも?) を生成することをレンダリングと呼ぶ界隈が存在するぞい。
768デフォルトの名無しさん
2022/06/20(月) 22:04:16.75ID:x7QB4AuO769デフォルトの名無しさん
2022/06/20(月) 22:08:03.20ID:j7veV6LL その前に
> レンダラーがWasmってどういうこと?
誰もこんなこと言って無くね?
> レンダラーがWasmってどういうこと?
誰もこんなこと言って無くね?
770デフォルトの名無しさん
2022/06/20(月) 22:20:30.26ID:G0GSIi1k 「wasmのレンダラー」の意味不明度が高すぎて混乱しているのだろう……
771デフォルトの名無しさん
2022/06/20(月) 22:33:21.69ID:vXHoc6MR wasmのレンダラーっていうのはtauri+yewの組み合わせなら間違ってないよ
彼はtauriがreactやvueもレンダリングできるってことを言いたいんじゃないの?
tauriはwebviewのrustやjavascriptのバインディングを提供するフレームワークだと自分は解釈してる
彼はtauriがreactやvueもレンダリングできるってことを言いたいんじゃないの?
tauriはwebviewのrustやjavascriptのバインディングを提供するフレームワークだと自分は解釈してる
772デフォルトの名無しさん
2022/06/20(月) 22:43:18.28ID:vXHoc6MR ちなみにjavascriptバインディングの無い既出の"web-view"ってのがcrate.ioにある
こっちは正真正銘wasmのレンダラーよ
https://crates.io/crates/web-view
こっちは正真正銘wasmのレンダラーよ
https://crates.io/crates/web-view
773デフォルトの名無しさん
2022/06/20(月) 22:49:34.14ID:RTpsTrZi だからwasmのレンダラーっていう書き方が悪いだろうよ
頭の悪いひとたちのために「wasmをレンダーするひと」って書け
頭の悪いひとたちのために「wasmをレンダーするひと」って書け
774デフォルトの名無しさん
2022/06/20(月) 22:54:18.58ID:X5CbdNui Tauri can render JavaScript and WASM and more.
ほら、これでいいか?
ほら、これでいいか?
775デフォルトの名無しさん
2022/06/20(月) 22:57:56.00ID:nM7DxFpE UIフレームワークの話なんか何が面白いの?
776デフォルトの名無しさん
2022/06/20(月) 23:01:44.97ID:DwXFtGxu さあ?
777デフォルトの名無しさん
2022/06/20(月) 23:01:47.43ID:FYZjQUUW778デフォルトの名無しさん
2022/06/20(月) 23:06:38.97ID:FiNSG1Db まあフロントやらずにバックだけ開発の人には関係ない話だな
779デフォルトの名無しさん
2022/06/20(月) 23:12:11.87ID:2JvwDfXO 違う話題って事で
「Rust for Rustaseans」って本めっちゃいいぞ
オライリー本やThe Bookの入門レベルを終えてある程度Rustでプログラム書いた後に読むといい
「Rust for Rustaseans」って本めっちゃいいぞ
オライリー本やThe Bookの入門レベルを終えてある程度Rustでプログラム書いた後に読むといい
780デフォルトの名無しさん
2022/06/20(月) 23:14:12.29ID:2JvwDfXO スペル間違ってた
恥ずい
恥ずい
781デフォルトの名無しさん
2022/06/20(月) 23:19:15.21ID:j7veV6LL >>779
なかなかそのレベルまで遠いんだろうな
なかなかそのレベルまで遠いんだろうな
782デフォルトの名無しさん
2022/06/21(火) 01:19:44.55ID:rZ1ZoU3X >>773 >>774
二人ともおかしい
wasmをレンダーすることはない
一般的にレンダリングとは抽象データから実データを生成すること
今回はTauriの話のようだからレンダリングは2階層あって
1つはTauri上で作るアプリが自分のデータからDOM(HTML)を生成するレンダリング
もう1つはTauri自体がそのDOM(HTML)からコンピューター画面へ描画生成するレンダリング
wasmが関係するとしたら前者
つまりwasm上で動くアプリがDOMを生成するレンダリング
wasmを使わない昔からのやり方ではJavaScript上で動くアプリがレンダリング
つまり対比点はwasmがレンダーするかJavaScriptがレンダーするか、とも言えることから
>>766
> レンダラーがWasmってどういうこと?
ここへ繋がるのではないかと推測
つまりRustコードを書くだけでアプリ作成を完結できるか否かの話にみえる
二人ともおかしい
wasmをレンダーすることはない
一般的にレンダリングとは抽象データから実データを生成すること
今回はTauriの話のようだからレンダリングは2階層あって
1つはTauri上で作るアプリが自分のデータからDOM(HTML)を生成するレンダリング
もう1つはTauri自体がそのDOM(HTML)からコンピューター画面へ描画生成するレンダリング
wasmが関係するとしたら前者
つまりwasm上で動くアプリがDOMを生成するレンダリング
wasmを使わない昔からのやり方ではJavaScript上で動くアプリがレンダリング
つまり対比点はwasmがレンダーするかJavaScriptがレンダーするか、とも言えることから
>>766
> レンダラーがWasmってどういうこと?
ここへ繋がるのではないかと推測
つまりRustコードを書くだけでアプリ作成を完結できるか否かの話にみえる
783デフォルトの名無しさん
2022/06/21(火) 01:28:03.75ID:rVN8NDnU784デフォルトの名無しさん
2022/06/21(火) 01:29:27.34ID:l/hCBOZ3 今スレの怪文書頂上決戦
52 デフォルトの名無しさん sage 2022/05/16(月) 19:06:18.85 ID:78bNbDCr
>>49
デタラメすぎ
ムーブでビットパターンのコピーは発生しない
ビットパターンのコピーが発生するのは引数の値渡し等であってムーブとは関係ない
さらに引数の値渡しでのでビットパターンのコピーとCopyのコピーも全く異なる
Copyのコピーはディープであって高コスト
755 デフォルトの名無しさん sage 2022/06/20(月) 17:55:14.20 ID:JDT/MbKD
Tauriはただのwasmのレンダラーだよ。Chromium内蔵をやめて実装をRustにしたElectron。
wasmerはレンダラーしないwasm実行環境。
52 デフォルトの名無しさん sage 2022/05/16(月) 19:06:18.85 ID:78bNbDCr
>>49
デタラメすぎ
ムーブでビットパターンのコピーは発生しない
ビットパターンのコピーが発生するのは引数の値渡し等であってムーブとは関係ない
さらに引数の値渡しでのでビットパターンのコピーとCopyのコピーも全く異なる
Copyのコピーはディープであって高コスト
755 デフォルトの名無しさん sage 2022/06/20(月) 17:55:14.20 ID:JDT/MbKD
Tauriはただのwasmのレンダラーだよ。Chromium内蔵をやめて実装をRustにしたElectron。
wasmerはレンダラーしないwasm実行環境。
785デフォルトの名無しさん
2022/06/21(火) 08:26:51.74ID:82ugTJay TauriはJavaScriptやWebAssemblyをWebViewが理解できる機械語に変換するライブラリじゃないの?
786デフォルトの名無しさん
2022/06/21(火) 08:42:00.86ID:X7xq+hMN オーバーロードがなぜ出来ないかって、型推論の完全性が失われるからじゃないの?
787デフォルトの名無しさん
2022/06/21(火) 08:56:29.88ID:TERGIQkG taui+webview==web rendererであってtaui≠=web rendererだから。
だからtauiがwasmやjavascript のrendererというのは間違い。
tauiを媒介したwebviewがwasmやjavascriptのrendererだから。
だからtauiがwasmやjavascript のrendererというのは間違い。
tauiを媒介したwebviewがwasmやjavascriptのrendererだから。
788デフォルトの名無しさん
2022/06/21(火) 08:59:28.38ID:vO+TReRM 俺はフロントエンドやらないからこのスレでTauriの話をしないでくれ
789デフォルトの名無しさん
2022/06/21(火) 09:03:37.95ID:E/HTpvzq renderやらrendererやら、レンダーやらレンダラーやら、ややこしいなおい
790デフォルトの名無しさん
2022/06/21(火) 09:08:13.67ID:OsotcMPi オーバーロードは無くていい派
791デフォルトの名無しさん
2022/06/21(火) 09:17:14.76ID:rK2P992k ジェネリクスで表現できるくらいの自明なものはオーバーロードしてもいいけど
それ以上に挙動が変わるなら名前変えたほうがいいと思ってるから
結局オーバーロードは無くていいかな
それ以上に挙動が変わるなら名前変えたほうがいいと思ってるから
結局オーバーロードは無くていいかな
792デフォルトの名無しさん
2022/06/21(火) 09:18:38.16ID:LcZeBWSd オーバーロードできないのは違和感あるけどすぐ慣れるぞ。頑張れ。
793デフォルトの名無しさん
2022/06/21(火) 09:27:48.90ID:e1jAZPeO >>784
言ってる本人が理解してないだけでwasmレンダラーって言い方はあるよ
言ってる本人が理解してないだけでwasmレンダラーって言い方はあるよ
794デフォルトの名無しさん
2022/06/21(火) 09:38:22.89ID:TERGIQkG TauriがElectronみたいにWebViewを内蔵してないから、TauriがWASMのレンダラーって勘違いしちゃったってことだな
よし解決したなUIの話はもう十分だろ
よし解決したなUIの話はもう十分だろ
795デフォルトの名無しさん
2022/06/21(火) 09:48:41.18ID:aUxUUrSq 古今東西ウェブのレンダラーってレンダリングエンジンのことじゃん
んで歴史あるASPを例にMS公式の解説を引用するならDSLのようにHTMLコードに変換(=レンダリング)する処理系ってことだよ
wasmモジュール(バイナリ)に変換するためのレンダラーはEmscriptenだからwasmがレンダラーって認識は間違い
んで歴史あるASPを例にMS公式の解説を引用するならDSLのようにHTMLコードに変換(=レンダリング)する処理系ってことだよ
wasmモジュール(バイナリ)に変換するためのレンダラーはEmscriptenだからwasmがレンダラーって認識は間違い
796デフォルトの名無しさん
2022/06/21(火) 09:58:17.91ID:4fSeXEQO なぜそこでemscriptenが出てくるんだ?
797デフォルトの名無しさん
2022/06/21(火) 10:01:09.64ID:4fSeXEQO いい加減「wasmのレンダラー」を「wasmがレンダラー」と読むのやめたら?
798デフォルトの名無しさん
2022/06/21(火) 10:03:06.58ID:4fSeXEQO 「wasmのレンダラー」は、wasmでビルドされたレンダラーじゃなくて、wasmバイナリを読み込むことができるレンダラーってことじゃないの?
799デフォルトの名無しさん
2022/06/21(火) 10:04:20.02ID:lcATvJP3 >>795
それは視野が狭い
例えばウェブ業界でCSR(client side rendering)やSSR(server side rendering)と言うときのレンダリングとはHTML/DOMを生成することを指す
CSRはブラウザ等の中でそれを行なうのでReact等ではJavaScriptでレンダリングをするしYew等ではWasm/Rustでレンダリングする
つまりWasmでレンダリングするということはTauriでは全てのコードをRustで書けることになる
それは視野が狭い
例えばウェブ業界でCSR(client side rendering)やSSR(server side rendering)と言うときのレンダリングとはHTML/DOMを生成することを指す
CSRはブラウザ等の中でそれを行なうのでReact等ではJavaScriptでレンダリングをするしYew等ではWasm/Rustでレンダリングする
つまりWasmでレンダリングするということはTauriでは全てのコードをRustで書けることになる
800デフォルトの名無しさん
2022/06/21(火) 10:09:54.89ID:l/hCBOZ3 cssを読み込んで適用できるからってわざわざそのレンダリングエンジンのことをcssレンダラーって呼ぶことがあるか?
801デフォルトの名無しさん
2022/06/21(火) 10:11:12.61ID:5vOFCGpG >>797
Rust使いはASTまでは構築できてもそこから意味理解が弱いんだろうな
Rust使いはASTまでは構築できてもそこから意味理解が弱いんだろうな
802デフォルトの名無しさん
2022/06/21(火) 10:12:25.82ID:D95D9dWE きみたちは一度これを読んだほうがいい
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 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 実行環境をバンドルする必要がないので、アプリケーションのサイズを小さく保つことができます
803デフォルトの名無しさん
2022/06/21(火) 10:30:52.39ID:ZcKPa2VS >>751 の、WASI実装のwasmerによるrustのVM言語化の話は興味深いけど、GUIフレームワークTauriの話はいい加減スレチ
Electronスレにでも行って議論してくれ
Electronスレにでも行って議論してくれ
804デフォルトの名無しさん
2022/06/21(火) 10:39:20.05ID:lcATvJP3 >>802にあるようにHTML/DOMから画面へのレンダリングはWebViewがしてくれるからアプリ開発者は関与しない
アプリ開発者が関与するのはアプリデータからHTML/DOMへのレンダリング部分のコードを書くこと
この点はWeb開発でもTauriでも同じ
アプリ開発者が関与するのはアプリデータからHTML/DOMへのレンダリング部分のコードを書くこと
この点はWeb開発でもTauriでも同じ
805デフォルトの名無しさん
2022/06/21(火) 11:04:51.42ID:uvaWF54t 結局怪文書の出どころはいつものオジだったww
いい加減聞きかじりで知ったかぶりするのやめたら?
いい加減聞きかじりで知ったかぶりするのやめたら?
806デフォルトの名無しさん
2022/06/21(火) 11:08:08.11ID:g+0qioKO 間違いを指摘してくれる人が周りにいないんだろうな
807デフォルトの名無しさん
2022/06/21(火) 11:11:56.32ID:RyNZqEbO IDコロコロしないでほしいわせめて
コテハンつけてくれたらNG捗るのになあ
「所有権の複製」のときから思ってたけど
コテハンつけてくれたらNG捗るのになあ
「所有権の複製」のときから思ってたけど
808デフォルトの名無しさん
2022/06/21(火) 11:13:49.44ID:7sQPW1UK tauriでNGすればおけ
809デフォルトの名無しさん
2022/06/21(火) 11:26:02.71ID:l/hCBOZ3 じゃあ次スレこそはワッチョイつけようか
810デフォルトの名無しさん
2022/06/21(火) 11:28:36.35ID:pS+FR3pl811デフォルトの名無しさん
2022/06/21(火) 11:38:04.80ID:mlYOyxJ9812デフォルトの名無しさん
2022/06/21(火) 11:49:09.87ID:GSNSCBV0 論理構成が薄弱で常に自己正当化するためだけにレスを重ねる人は相手にしちゃダメなんだよ
特にほぼすべてのレスで相手を否定する言葉から始める人はある種の病気だと思って対処した方がいい
論理的な批判に耳を貸す相手じゃないから
特にほぼすべてのレスで相手を否定する言葉から始める人はある種の病気だと思って対処した方がいい
論理的な批判に耳を貸す相手じゃないから
813デフォルトの名無しさん
2022/06/21(火) 11:55:22.58ID:RyNZqEbO コテハンつけてくれるんなら
俺は今後一切複製クンを馬鹿にしないし
むしろ尊敬するから頼むからつけてほしい
俺は今後一切複製クンを馬鹿にしないし
むしろ尊敬するから頼むからつけてほしい
814デフォルトの名無しさん
2022/06/21(火) 12:14:34.84ID:l/hCBOZ3 >>980
ワッチョイついでで思い出したけどvs C++へのリンクは落ちてるから消しといてくれ
ワッチョイついでで思い出したけどvs C++へのリンクは落ちてるから消しといてくれ
815デフォルトの名無しさん
2022/06/22(水) 07:37:30.53ID:EdrHrSzx >>719
これ和製英語もそうだが和製発音も相当やばいよ
今ホットなウクライナがバリバリの和製発音でUkraineって本来ユークレインて発音するからな
英語できないでボランティア行ったやつウクライナ!ウクライナ!って全く通じない発音を連呼してたかと思うとはこっちが恥ずかしくてまさにもう見てらんない!
いい加減に読みも発音もグローバルスタンダードにしろっつーの何でもかんでもガラパゴスなの頭悪すぎる
これ和製英語もそうだが和製発音も相当やばいよ
今ホットなウクライナがバリバリの和製発音でUkraineって本来ユークレインて発音するからな
英語できないでボランティア行ったやつウクライナ!ウクライナ!って全く通じない発音を連呼してたかと思うとはこっちが恥ずかしくてまさにもう見てらんない!
いい加減に読みも発音もグローバルスタンダードにしろっつーの何でもかんでもガラパゴスなの頭悪すぎる
816デフォルトの名無しさん
2022/06/22(水) 07:45:18.19ID:qSL2YnBO だからなに
817デフォルトの名無しさん
2022/06/22(水) 08:24:23.86ID:s09CCxIL >>815
ウィーンをヴィエナって言えってか?
ウィーンをヴィエナって言えってか?
818デフォルトの名無しさん
2022/06/22(水) 08:24:47.41ID:48p4Di1y 頭悪くても使えりゃいい
819デフォルトの名無しさん
2022/06/22(水) 10:01:54.69ID:U3SsHgc3 >>815
強いて言えばウクライーナってくらいで和製発音じゃないから通じるよ
日本は英米と違って中華系の地名・名前以外は現地発音に寄せてるものが多い
中華系は日本語漢字読みだと外国人には全く通じない(中国人・台湾人なら漢字で書けば通じる)
Rustも最初はルーストって発音してる人いたよね
Scalaをスケイラとかも
強いて言えばウクライーナってくらいで和製発音じゃないから通じるよ
日本は英米と違って中華系の地名・名前以外は現地発音に寄せてるものが多い
中華系は日本語漢字読みだと外国人には全く通じない(中国人・台湾人なら漢字で書けば通じる)
Rustも最初はルーストって発音してる人いたよね
Scalaをスケイラとかも
820デフォルトの名無しさん
2022/06/22(水) 10:12:00.42ID:kKprzj+b いや通じないんだなこれがアジアの英語圏ですら通じないんですよ嘘吐いちゃダメよ
公用語が英語のフィリピンのマックやスタバで日本人のゴミ英語が一切通じない現実から目を背けるな
特にプログラミングの世界でどれだけ日本語の意訳が学習の障害になってきた・なっているか
超基本の代入を例に挙げてもわかるせめてアサイン or アサインメントってカタカナにすれば超理解し易いのに代入?ってなるよ代入って意訳した奴は大馬鹿だよ
公用語が英語のフィリピンのマックやスタバで日本人のゴミ英語が一切通じない現実から目を背けるな
特にプログラミングの世界でどれだけ日本語の意訳が学習の障害になってきた・なっているか
超基本の代入を例に挙げてもわかるせめてアサイン or アサインメントってカタカナにすれば超理解し易いのに代入?ってなるよ代入って意訳した奴は大馬鹿だよ
821デフォルトの名無しさん
2022/06/22(水) 10:23:30.15ID:li50soYi エビデンスを出せ
822デフォルトの名無しさん
2022/06/22(水) 10:41:03.57ID:k8vtEW7h 英語カーンプレクスをこじらせちゃってるね
823デフォルトの名無しさん
2022/06/22(水) 10:50:41.07ID:LE1FQ2Yx ラストは日本語識別子も使えるから色々大丈夫
824デフォルトの名無しさん
2022/06/22(水) 10:54:46.62ID:QEBJj1WM フィリピン人のオンライン英会話レッスンで
ウクライナが通じなくて恥ずかしかったんだなきっと
気持ちはわからなくはないが恥ずかしがることではないよ
ウクライナが通じなくて恥ずかしかったんだなきっと
気持ちはわからなくはないが恥ずかしがることではないよ
825デフォルトの名無しさん
2022/06/22(水) 11:04:11.24ID:SASaungr 触れちゃいけない人だろ
面倒だからそのくらいにしとけ
面倒だからそのくらいにしとけ
826デフォルトの名無しさん
2022/06/22(水) 11:54:59.01ID:TXCOqcCS 論破されると変人扱いでシカトとかまんま陰キャチー牛オタクで草
プロジェクトが炎上する理由てこういうプログラマーの癖に論理じゃなくて感情で他人の足引っ張るの大好きな馬鹿が原因なんだよな
プロジェクトが炎上する理由てこういうプログラマーの癖に論理じゃなくて感情で他人の足引っ張るの大好きな馬鹿が原因なんだよな
827デフォルトの名無しさん
2022/06/22(水) 12:16:04.88ID:vkSjQpLZ 早口ですね
828デフォルトの名無しさん
2022/06/22(水) 12:53:20.15ID:KbrpK4gE ID変わっちゃうのは仕方がないことだからコテハンつけてくれ
829デフォルトの名無しさん
2022/06/22(水) 12:55:32.81ID:PETcyPz4 俺の場合、英語だと何倍も読むのに時間がかかったり、わからない単語や言い回しがあったりするので和訳はありがたいんだけど・・・・
ただ専門用語については、英語でなんて言うのかを併記して欲しいな
後に調べるのが大変になってしまう
上で騒いでる発音に関しては、まあ学習の上ではあんまり問題ないね
ただ専門用語については、英語でなんて言うのかを併記して欲しいな
後に調べるのが大変になってしまう
上で騒いでる発音に関しては、まあ学習の上ではあんまり問題ないね
830デフォルトの名無しさん
2022/06/22(水) 14:09:24.45ID:jR4emiFb 発音か…
もう長いこと勉強したことないな
発音勉強するいいサイトないの?(スレチ)
もう長いこと勉強したことないな
発音勉強するいいサイトないの?(スレチ)
831デフォルトの名無しさん
2022/06/22(水) 14:40:24.01ID:NTc30+P3 そこにyoutubeがあるだろ
832デフォルトの名無しさん
2022/06/22(水) 15:11:02.84ID:iqmSmX2L ヨーロッパの地名も日本語は英語よりまともなことが多い。現地語をカナカナに当てはめちゃってるので発音は違うけど。
パリ、パリス
ローマ、ローム
フィレンツェ、フローレンス
パリ、パリス
ローマ、ローム
フィレンツェ、フローレンス
833デフォルトの名無しさん
2022/06/22(水) 15:24:30.47ID:UvvJO3VG おまいらどれを読み間違っていたか正直に言いなさい
height
width
adjust
false
queue
deque
lambda
column
char
height
width
adjust
false
queue
deque
lambda
column
char
834デフォルトの名無しさん
2022/06/22(水) 15:32:22.45ID:hyphYc1n >>815
そこは英語できないじゃなくて、English出来ないだろ!
そこは英語できないじゃなくて、English出来ないだろ!
835デフォルトの名無しさん
2022/06/22(水) 15:37:13.88ID:KbrpK4gE ここまで自分以外単発
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国側が首相答弁の撤回要求、日本側拒否 [夜のけいちゃん★]
- 債券・円・株「トリプル安」に…長期金利1.755%まで上昇、円は対ユーロで史上最安値 [蚤の市★]
- 映画「鬼滅の刃」の興行収入急減、日本行き航空券大量キャンセル…中国メディア報道 [蚤の市★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★5 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- 麻生太郎氏、高市政権と距離を置きはじめる(´・ω・`) [399259198]
- 【悲報】中国営業に熱心な日本人タレントたち、中国のイベントが続々と中止に… まだ予定中のアイドルとか歌手とかたくさんいるけど [452836546]
- 自閉症が「んなっしょい」と連呼するお🏡
- 【悲報】高市効果で「1ドル=160円」が相場へwwwwwwwwwwwwwwwwwwwwwwwwwwwww 止まらぬ高市円安💥💥 [871926377]
- 高市総理で期待してるかもしれないけど、自民党はもうダメだから、超党派の勢力が出てくるみたいだぞ。 [134367759]
- トヨタ、反日だった。2027年に中国にレクサスのEV工場を設立。高市 [931948549]
