Rust part23
レス数が950を超えています。1000を超えると書き込みができなくなります。
tauriは叩く要素が特にない
electronのデメリットを克服しつつも既存の普及済み技術を集合させた感じなんだもの
tauri導入における敷居の低さはあっぱれとしか言いようがない
ウェブ技術やってない人はこれを機会にreactを勉強したらいいよ なんかもう面倒臭いしバックエンドもnode.jsでいい気がしてきた 結局最初はrailsでokみたいなのが最近の流れでしょ。
そこから開発規模に沿ってどう分割していくかってのが最近のテーマではあると思うけど。
最初からかっちり開発しましょうなんて20年前のお花畑理論でしかないわな。 ネイティブGUIアプリの話にRails関係ないだろ
Web開発でもとりあえずRailsのピークは過ぎ去ってるぞ モダンなGUIアーキテクチャでRust書きたいよ
今のは全部古すぎる >>875
ネイティブGUIアプリじゃなくてデスクトップGUIアプリやろ
まさかTauriはネイティブ扱いとか言わんよな? >>878
何言ってるのか意味わからんので
あなたのネイティブGUIアプリと
デスクトップGUIアプリの定義と
その違いを説明してくれ デスクトップGUIはWebViewを使ったガワアプリも含まれるって意味だろ >>879
一般的にネイティブアプリとは各プラットフォームでネイティブとされてるUIコンポーネントや開発ツールを使って作られたもの
デスクトップアプリはWindows・macOS・Linuxなどのデスクトッププラットフォーム上で実行されるアプリ
(どちらも基本的にGUIアプリについてのみ使われる言葉)
例えばJavaで作ったデスクトップアプリは一般的にネイティブアプリとは呼ばれないが
Java(とJetpack Compose)で作ったAndroidアプリはネイティブアプリと呼ばれる Visual Studio Codeはネイティブアプリですか? tauriはフロント側をrustで書けないのがきつい
yewとかで頑張ればrustでやれなくはないけど素直にjs使った方がいいし フロントは成熟したフレームワークを使いたいからhtmljs仕様なのはむしろ助かることない? TauriはOS付属のWebViewを下地にして動くことを売りにしてるんだからRustでフロント書きたい人は最初からお客様じゃないぞ
本気でYewでひーひー言いながら書くつもりか? フロントエンドをHTML/CSS/JavaScript以外で書く人がもうほとんどいない
ただしJavaScriptを直接書かなくてもWebAssemblyで好きな言語で書くのは構わないし同じWeb枠組みの範囲内の話 >>888
結局これだよな。JS以外のクロスプラットフォームなフロントエンドってほとんど無いんだからそこはもう諦めたほうが そもそもrust推すやつはフロントエンドなんて全く好きじゃないだろ。 フロントエンドだけでは何もできなくて
バックエンドや裏はRust採用がリソースコストを最小にできる
そのためのクラウドでのコードもクラウドインフラ自体もRustで記述
さらにCDNインフラ自体もCDNエッジでのコードもRustで記述 >>872
何にしたって否応なくトレードオフはある。
Electoron のデメリットを克服したといっても
その替わりに Electoron に無かったデメリットも生じてる。
たとえば WebView を抱え込まない (実行環境にあるのを使う) のは
実行環境のエコシステムとの連携が必須ってことだ。
基本的にはちゃんとサポートが続いているバージョンの実行環境を使えって話ではあるけどさ、
そうもいかんこともあるのも現実なんよ。
Tauri を叩いてるやつなんていないよ。
まさか「あらゆる」 UI を Tauri でなんとかできると思ってるわけじゃないだろ? という話。
比較的には有力とは言えるだろうけども。 仮想のtauri狂信者を叩いてるのが一人いるのはわかった そんなに熱くならんでも良い
Tauriガワ+Rustビジネスロジックな本格的定番デスクトップアプリが
未だに存在しないから察しろ >>891
そこまで行くのに何十年掛かるんだろうなぁ >>896
既にRustで記述されているという現在の話だぞ
Rustで記述されているソース記事は>>51 何十年かかろうがRustが普及するのは事実
乗り遅れるなよ? 既にそれらクラウドやCDNのインフラはRust製へ切り替わっていってるし
その上で動くユーザーコードも従量制コストのためRustが採用されてるね Rustって、学習コストていうか、習得難易度が高いらしいね 本来ちゃんと考えなきゃいけないものをランタイムがやってくれるからって
思考放棄してた部分が表に出てきただけなんだよね
例えば優秀な人はCでもポインタ一つとってもその意味するところが何か、所有するのか、弱参照なのかを意識するし
オブジェクトの管理に参照カウントを実装しているだろう
実際至高のCプログラムであるlinuxカーネルはそのような作りになっている
優秀な人は凡人に見えていないものが見えてるんだよね >>903
>実際至高のCプログラムであるlinuxカーネルはそのような作りになっている
>優秀な人は凡人に見えていないものが見えてるんだよね
そして年間数百個の脆弱性を生む結果となっている
真に優秀なら当然そんな結果はもたらさない
自分が優秀だと勘違いしてる人は凡人にすら見える当たり前ことが見えてないんだよね >>904
脆弱性ゼロというのはありえないというのはわかる? >>903
そのランタイムに任せて非効率になる道と
人が頑張って効率的になるが脆弱性も生じる道の2つしか従来なかったところに
第3の道として効率的かつ安全が保証されるRustが登場して解決した >>899
Rustが向いてそうなOSやハイパーバイザが
まだまだじゃない? それなら有志団体のProssimoあたりがRust移植を資金調達しながらやってるじゃない
焦らんでも数十年後にはRustがそれなりに普及してるよ マンガで読むrust入門とか小学生向けの本が出れば本格的普及かな 最初にスタックフレームの説明から入るのか。
胸熱だな。 バカと初心者は遅いバカ向け言語でいいんだよ
バカでなければその後にRustに行き着くから 単に sudo を rust で書き直すのにもわりかし時間かかってるよな。 昔のCでよくある
hoge = update_hoge(hoge);
みたいなプログラムはRustに移植するのがクソ大変なんだよ
古いプログラムだとこの手のコードが大量に出てくる
実質データ構造から全て書き直しになって移植に時間がかかる インターネットドメインの無償TLS証明書であるLet's Encryptなどを運用している非営利団体ISRG (Internet Security Research Group)のProssimoプロジェクトは二つの目標を掲げている。
「私たちの目標は二つある。1つは、インターネットを支えるソフトウェアインフラをメモリ安全のコードに書き換えること。もう1つは、メモリ安全性に関する人々の考え方を変えることだ。『C』や『C++』のようなメモリ安全ではない言語で書かれたソフトウェアを展開するのは危険だという証拠があるにもかかわらず使われ続けており、人々がそのリスクを十分に認識し、メモリ安全性をソフトウェアの要件と見なすようにしたい。」
このソフトウェアインフラのメモリ安全性向上に向けて取り組むProssimoプロジェクトの一環として、suやsudoなどのセキュリティユーティリティーを「Rust」で再実装して広める活動も行われている。 コンピュータリテラシーの低い人を増やしまくった結果セキュリティ事故祭りになっているのでは? >>914
>> hoge = update_hoge(hoge);
その例だけなら以下で終わるから説明不十分
update_hoge(&mut hoge);
もちろんこれはメソッド化して
impl Hoge {
fn update(&mut self) {
呼び出しはhoge.update()
これで終わる話だから
おそらく元のC言語コードがグローバル変数を使うなど酷い状態なのだろう >>917
C/C++を捨てる方向でどこも同じか
>>500で米政府も表明してるしな >>915
当たり前だがhogeはヒープで確保されており
あらゆるところで参照、保持、変更されうる場合がある
よってRcにて管理する必要がある
当然Rcの中のオブジェクトを変更できないと意味がない
つまりCellなりRefCellが必要となる
そして循環参照の問題もあるので弱参照を考えなきゃならん
このようにちょっとしたコードでも単純に移植することが難しい
rust wayな方法で書き直すしかない sudoが時間かかってるのは単にそれなりの規模だからってだけだと思うけどな
あとsudo風の代替品ではなくてそのまま入れ替え可能なものを目指してるから
仕様の把握と一致検証にも時間がかかるだろうし ゲーム開発に向かないからC/C++が残ることが確定してしまった >>921
Rcは必要ない
Rcは所有者が複数になった時のみ登場 Rustゲームエンジン開発なんざ勝手にやっとけって感じ
セキュリティ脆弱性が致命的になる分野でのRustへの移植が大事なんだから >>925
ゲーム会社でRustを採用しようとするところが全然出てこない
それが答えだよ 巨大なC/C++遺産ですぐに動けないだけでおそらく少しずつ進めているのだろう
もし何ら対策しないところがあるとすればそのゲーム会社だけ取り残されるのだろう ゲームなんていう表層的な分野でRustは採用なんてされてないだぁ!って駄々をこねられてもねえ 分野によって対応の時間差が出るだろうけど
C/C++排除の流れは止まらない 少なくともアメリカの軍事分野の制御システムは>>500の声明のとおり最優先でC/C++からRustへの置き換えられるのが確定してるし民間に広まるのは時間の問題 DirectX、OpenGL、Vulkanといった主要なグラフィックスAPIがC/C++で作られてるし
ゲーム分野が仮にRustに置き換わるにしろ数十年はかかりそう ポインタの概念を経由しないでrustから入るってほぼ無理だと思うけどね。
rustから入ればc/c++はいらないって人はその辺を誤魔化しすぎてんだよ。 ポインタの概念の理解は必要だけど C の構文は理解困難なのよね。 rustがメインで使われるようになろうとも、組み込み系の最初の学習教材としてはC言語が一番扱いやすいから大学で組み込み系での実践言語として今後も使われていくよ
一定数ははじめからRustを教えたりJavaを教えるところもあるかもだけど なんか勝手に組み込みの話にされてるけどゲームはC/C++が残り続けるよ
Rustでゲームを作るのは流行らない 政府レベルで勧告しているから少なくともビジネスレベルやその製品まではC/C++が排除されてRustへ置き換わる
ゲームのような枝葉末節は知らん ゲーム作る人大半の人は、言語じゃなくて、
どんなゲームエンジンを使うかしか意識しないでしょ。
まずは、メジャーなゲームエンジンに、
Rustが採用されるところからじゃない。 Rustでゲームは向かないみたいな記事はあったけど、あれもゲームエンジンのレイヤとかではなくてもっと上のゲーム固有のロジックを記述する時にRustは向かないというだけの話じゃなかったか? ゲーム固有の言語と汎用の低級言語の二つを採用するのが良い
でも上のレイヤはGUIとかデータ記述言語とかで置き換えられ
ロジックを記述する言語は一つしか採用されないみたいな思想の人もいるかな >>938
まともなゲーム会社はエンジンを内製するんで何の言語使うかとても意識するけど 改造とかカスタマイズはするかもしれんが、まともなところイコール内製は成立しないんじゃないかな。 数年前にもRustはゴミ。使う奴なんていないみたいなことを言っている奴がいた気がするが じつはLLVMのインフラを捨てずカスタマイズしたのがRust
逆に、プロトコルの互換性はあっても
古い実装と古いコンテンツを捨ててしまうのがインターネットでしょ でもお前ミドルウェアとか全く書かないじゃんってやつばっかなのになぜかrust使おうとするやつ 似たような理屈で
循環参照を全くやらないやつはmark&sweepを禁止される JetBrains開発Rust用IDEのRustRoverが安定版リリースに向けてライセンス体系を発表したけど非商用無料で使わせて貰えるみたい
ttps://blog.jetbrains.com/rust/2024/05/21/rustrover-is-released-and-includes-a-free-non-commercial-option/ RustRover 優秀そうだけど、デファクトになってほしくないんだよなぁ。LSPベースの rust-analyzer と開発体験を分断されたくない。
Kotlin みたいに JetBrains 製品にお布施しないとまともな開発者体験を得られない言語に成り下がられるのはゴメンだ。 JetBrainsのRustIDE、完全有料になるかと思ってたわ > 開発体験を分断されたくない。
後発にしては厳しい無料条件なので心配しなくても良いかと
正式な開発でなくても(リモートワークも含めて)仕事時間中に使えば
"regular direct or indirect income"に該当するから"non-commercial license"は適用違反
"non-commercial license"はテレメトリーをオプトアウト出来ないので要注意 >>949
KotlinはintellijのCommunity版では駄目なの? バカにはスクリプト言語でまともなコードを書くのは難しい >>831の反Rustの人ですら
数行のコード以外はスクリプト言語よりもRustの生産性が高いと認めてるもんな 10行以内かつ実行時間10秒以内のスクリプトだけはPythonの方が生産性が高い 四半期に一回、特定のひと一人で、実行時間1分みたいな、たくさん動かないやつはJVMか.NET系で買いてるかな〜
Rustで書くスキルも無いが。 >>956
んなこたない。適当なAPI叩いて結果保存するくらいのことでわざわざrustなんか使わねーよ。 俺もbashスクリプトで辛くなったらRust使ってる シェルスクリプトはもう古い
クソ文法すぎる
これからは google/zx だよ 何でもシェルスクリプトでやろうとするガイジが昔湧いてたなぁ >>963
CPUメモリリソース料金を下げるためにRust利用がベストチョイス やりたいこと次第だけどシェルの代替はPythonでほぼ事足りると思う
ファイル操作、文字列のパースやフォーマット、プロセスの呼び出しなどは簡単にできるし読みやすい やりたいこと次第だけどシェルの代替はPythonでほぼ事足りると思う
ファイル操作、文字列のパースやフォーマット、プロセスの呼び出しなどは簡単にできるし読みやすい レス数が950を超えています。1000を超えると書き込みができなくなります。