- 1 名前:デフォルトの名無しさん [2023/08/15(火) 22:24:39.45 ID:xzxy4cgp.net]
- 公式
https://www.rust-lang.org/ https://blog.rust-lang.org/ https://github.com/rust-lang/rust 公式ドキュメント https://www.rust-lang.org/learn Web上の実行環境 https://play.rust-lang.org ※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/ ※次スレは原則>>980が立てること 前スレ Rust part20 https://mevius.2ch.net/test/read.cgi/tech/1677771928/ ワッチョイスレ プログラミング言語 Rust 4【ワッチョイ】 https://mevius.2ch.net/test/read.cgi/tech/1514107621/
- 843 名前:デフォルトの名無しさん [2024/01/07(日) 15:48:04.06 ID:ujkX2rEF.net]
- Rustがムチ打つかレビューでムチ打つかの違いでしかないんだよな
誰にも見せないコードなら関係ないけど
- 844 名前:デフォルトの名無しさん mailto:sage [2024/01/07(日) 16:53:56.32 ID:FD9BMc1I.net]
- 男は黙ってSegmentation Fault
- 845 名前:デフォルトの名無しさん [2024/01/07(日) 21:59:04.51 ID:k7dl9y2N.net]
- >>827
レビューは体裁しか見ないやついるからな。内容読まないとかレビューになってねーから。 コンパイラにチェックさせたほうがマシ。
- 846 名前:デフォルトの名無しさん mailto:sage [2024/01/08(月) 12:20:12.43 ID:JTfbpR0w.net]
- 刺激ってメモリリークでクラッシュとか、ストレージフォーマットとかか?
- 847 名前:デフォルトの名無しさん mailto:sage [2024/01/08(月) 20:41:35.20 ID:6GvPzxXI.net]
- スマートポインタについて勉強中。強い参照、弱い参照という概念が出てきて目が回る
RefCell……所有権の共有が発生する参照……参照??? 言葉遊びが過ぎないか。。。
- 848 名前:デフォルトの名無しさん [2024/01/08(月) 21:50:36.68 ID:VjyRCTjd.net]
- 何書いてるかによるけど、出来ればスマートポインタ使わずに書きたい
- 849 名前:デフォルトの名無しさん mailto:sage [2024/01/08(月) 21:56:10.69 ID:a9mjVCEv.net]
- >>831
強い参照、弱い参照はRustやC++だけでなくJavaやC#、PythonやJavaScriptでさえ出てくる一般的な概念だぞ RefCellは所有権の共有じゃないぞ スマートポインタや参照という言葉もRustの定義を理解した上で学ぶ必要があるんだけどちゃんとした資料で勉強してるか?
- 850 名前:デフォルトの名無しさん [2024/01/08(月) 22:02:17.92 ID:6GvPzxXI.net]
- >>833
目が回って頭が混乱してた。Rcのことです the bookを読んでます。英語版と日本語版を読み比べならが進めてます
- 851 名前:デフォルトの名無しさん [2024/01/08(月) 22:04:58.02 ID:6GvPzxXI.net]
- >>832
FSTという決定木を呼び出す実装を書く予定なんだよね どこまで既存のクレートを使えるか次第だけど。たぶんスマートポインタ必須だろうなあ……胃が重い
- 852 名前:デフォルトの名無しさん mailto:sage [2024/01/08(月) 22:45:23.91 ID:U+1fQP74.net]
-
- 853 名前:target="_blank">>>831
説明するのには言葉を使うしかしょうがないだろう。 それとも小難しい記号だらけの操作的意味論を読み解くほうがマシとでもいうか? []- [ここ壊れてます]
- 854 名前:デフォルトの名無しさん mailto:sage [2024/01/08(月) 22:56:58.99 ID:DdO69zqE.net]
- >>835
まず前提環境が重要になる たとえば並行はあるのか?並列はあるのか?両方あるのか? あるとしても共有が必要なそれらの範囲はどこまでなのか? それとは別の話で参照の共有と所有権の共有についても前者だけで済むのか後者も必要なのか? など
- 855 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 00:03:40.70 ID:8DV95bbu.net]
- >>835
木構造は普通にポインタ使うと地獄だよ Nodeにポインタを持たせる実装ならRefCellとRcとOptionの組み合わせでゴニョゴニョやることになる
- 856 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 00:15:41.68 ID:nS4EcHpr.net]
- 配列にどんどん詰め込んでいって
ポインタのかわりにインデックスで管理するという方法も取れなくはない。 Rust で参照の取り扱いが面倒くさくなったときは割とよく使われる。
- 857 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 00:41:55.42 ID:p6fXuzFt.net]
- Rustだから面倒になるのではなく
同じ方針ならばC/C++でも同じようになる そしてどの言語でも同じく色んな方針を取ることができる たとえばプログラム終了まであるメモリを解放しない&しなくてよい状況と方針ならば CだけでなくRustでもそのようにプログラミングすることで簡単になる
- 858 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 00:48:52.81 ID:71QF1ibn.net]
- Array/VecとMapでやる方が普通
てかスマートポインタで胃が重いとか言ってる人にFST実装させようとするのはどうなのか 学生さんの宿題ならいいんだけど
- 859 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 13:46:52.23 ID:cAvIdAYQ.net]
- >>815
windowsこそrustで書き直して欲しい
- 860 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 14:29:03.17 ID:ZeSQ9HCg.net]
- いやWindowsは消滅してくれ
Windowsのパス区切り文字がバックスラッシュだと面倒くさいんだよ いつになったら他のOSのようにスラッシュになるんだ
- 861 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 14:42:13.51 ID:W90zSzbf.net]
- そこでいまどき困るか?
ライブラリで吸収してくれるだろ
- 862 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 15:03:46.95 ID:mDjH0FU9.net]
- 困るのはそんなポイントではないわな
- 863 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 15:51:14.16 ID:LmJT0Ko+.net]
- UNIX
https://learn.microsoft.com/ja-jp/cpp/c-runtime-library/unix プログラムを UNIX に移植する場合は、次のガイドラインに従ってください。 ・引数としてパスとファイル名を表す文字列を実行するルーチンでは、UNIX と互換性のあるパス区切り記号を使用します。 UNIX は、この目的でスラッシュ (/) のみをサポートしますが、Win32 オペレーティング システムでは、円記号 (\) とスラッシュ (/) の両方をサポートします。
- 864 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 16:00:24.31 ID:OfKvL6VZ.net]
- WindowsはWSL2のおかげで立ち位置を少し取り戻した感ある
Docker×WSL最強なんだ
- 865 名前:デフォルトの名無しさん [2024/01/09(火) 16:26:04.96 ID:dEgljR3a.net]
- Rustを学習していてよくわかんないんだけど、なんで&mut演算子って=の右側に書くの?
演算子を分けて&を右でmutを左にすべきことじゃないのか
- 866 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 16:31:10.75 ID:T7+wXIHZ.net]
- >>848
変数がmutなのと参照がmutなのと意味が違うでしょ
- 867 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 16:38:48.96 ID:7APTEGxI.net]
- 不変なT型 T
不変な不変参照 &T 不変な可変参照 &mut T 可変なT型 mut T 可変な不変参照 mut &T 可変な可変参照 mut &mut T
- 868 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 16:51:10.28 ID:/HMizx3H.net]
- それ複オジがよく書いてたやつだけど
そうやって書くと型の違いと変数のmutabilityの違いを混同しちゃうから良くないんだよね
- 869 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 16:57:39.62 ID:FRUFivso.net]
- fn main() {
let mut foo = String::from("foo"); let mut bar = String::from("bar"); let a1 = &foo; // a1の値も参照先(foo)も変更できない // a1.push('o'); // 不可 // a1 = &bar; // 不可 println!("{a1}"); // foo let a2 = &mut foo; // a2の値は変更できないが参照先(foo)は変更できる a2.push('o'); // a2 = &mut bar; // 不可 println!("{a2}"); // fooo let mut a3 = &foo; // a3の値は変更できるが参照先(foo)は変更できない // a3.push('o'); // 不可 a3 = &bar; println!("{a3}"); // bar let mut a4 = &mut foo; // a4の値も参照先(foo)も変更できる a4.push('o'); a4 = &mut bar; println!("{foo} {a4}"); // foooo bar }
- 870 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 17:54:54.96 ID:yDV9ZPsZ.net]
- >>815
先にfirefox互換のブラウザをRustで作れよ
- 871 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 20:29:20.32 ID:OfKvL6VZ.net]
- >>815
ついにRustで書き切ったカーネルが出たか 素晴らしい😎
- 872 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 21:43:46.90 ID:ba97u6j0.net]
- JythonみたいにRinuxとか呼ばれる様になるんかね
- 873 名前:デフォルトの名無しさん [2024/01/09(火) 23:30:54.91 ID:kFOi0b9p.net]
- >>847
わかる
- 874 名前:デフォルトの名無しさん [2024/01/09(火) 23:33:35.76 ID:kFOi0b9p.net]
- >>850
>可変な不変参照 mut &T >可変な可変参照 mut &mut T そこは mut& T mut& mut T のほうが良くないか?
- 875 名前:デフォルトの名無しさん mailto:sage [2024/01/09(火) 23:44:10.92 ID:VWF/HjAU.net]
- >>857
なんでmut& Tやmut& mut Tのほうがいいと思うの?
- 876 名前:デフォルトの名無しさん mailto:sage [2024/01/10(水) 00:26:25.61 ID:50jzIioV.net]
- 変数は不変 参照先も不変
【Rust】 let ptr: &i32 = ... 【C/C++】 const int* const ptr = ... 変数は可変 参照先は不変 【Rust】 let mut ptr: &i32 = ... 【C/C++】 const int* ptr = ... 変数は不変 参照先は可変 【Rust】 let ptr: &mut i32 = ... 【C/C++】 int* const ptr = ... 変数は可変 参照先も可変 【Rust】 let mut ptr: &mut i32 = ... 【C/C++】 int* ptr = ...
- 877 名前:デフォルトの名無しさん mailto:sage [2024/01/15(月) 07:32:23.77 ID:GWa8/EJ0.net]
- プログラミングをしていて最も出現頻度が高いのがその4つのうちこのパターンだな
>変数は不変 参照先も不変 >【Rust】 let ptr: &i32 = ... >【C/C++】 const int* const ptr = ... したがって可変部分のみmutを付加するRust方式が理に適っている
- 878 名前:デフォルトの名無しさん mailto:sage [2024/01/15(月) 09:26:21.36 ID:87NFfbL3.net]
- C/C++のconstとRustのletを対比するなよ
コンパイル時の定数と変数は違うから
- 879 名前:デフォルトの名無しさん mailto:sage [2024/01/15(月) 10:46:44.96 ID:6ZDKWey9.net]
- C/C++のconstはコンパイル時の定数とは限らない
> 変数は不変 参照先も不変 C++はconst int*で定義した変数経由では参照先を変更出来なくても他から参照先が変更されることがあるので「参照先が不変」とは言えない
- 880 名前:デフォルトの名無しさん mailto:sage [2024/01/15(月) 11:01:12.76 ID:AliX8x8r.net]
- >>861
コンパイル時の定数は Rustではconst C/C++ではconstexpr
- 881 名前:デフォルトの名無しさん mailto:sage [2024/01/15(月) 11:06:03.10 ID:YtourOsv.net]
- C/C++のconstはコンパイル時の定数となることもあるのがややこしいところ
constexprはそれを矯正するもの 1対1の単純な比較では抜け落ちるものが多すぎる
- 882 名前:デフォルトの名無しさん mailto:sage [2024/01/15(月) 18:27:24.64 ID:8IhMbXbn.net]
- イミュータブルの観点でこの対応は合ってる。
Rust: let foo: &i32 = ... C++: const int* const foo = ... ただし違いとしては、 Rustではfooが生きている間は参照先が(内部可変性を除いて)真に書き変わらない保証がある点が異なる。
- 883 名前:デフォルトの名無しさん mailto:sage [2024/01/17(水) 18:48:37.40 ID:6S0S7+zy.net]
- この件はC++と比較しても刺激が少ない
mutがない関数型言語と比較するほうがいい
- 884 名前:デフォルトの名無しさん mailto:sage [2024/01/17(水) 19:39:11.45 ID:gS91WelD.net]
- ミュータブルを無くすと美しく見える反面
ガベージコレクションが多数発生し効率が悪くなる アルゴリズムも制約を受けてしまい効率が悪くなる
- 885 名前:デフォルトの名無しさん mailto:sage [2024/01/17(水) 19:42:50.91 ID:NPS8JVAZ.net]
- Linuxカーネルについに実用的なコードが
マージされたと話題になってるな
- 886 名前:デフォルトの名無しさん mailto:sage [2024/01/17(水) 20:07:47.38 ID:ouelKdFS.net]
- >>868
新規追加するドライバにだけ採用とか前に言ってなかったっけ?
- 887 名前:デフォルトの名無しさん mailto:sage [2024/01/17(水) 21:08:18.79 ID:6S0S7+zy.net]
- >>867
ガベコレが多数発生することをRust風に言うと、 実行時の参照カウントが激しく増減する
- 888 名前:デフォルトの名無しさん mailto:sage [2024/01/17(水) 21:16:06.79 ID:gS91WelD.net]
- >>870
ミュータブルがない関数型言語との比較の話だから ミュータブル非導入で起きていることは使い捨て一時ガベージの大量発生
- 889 名前:デフォルトの名無しさん mailto:sage [2024/01/17(水) 23:31:19.01 ID:6S0S7+zy.net]
- cloneに似た処理をしてからオリジナルをdropするんだよね
- 890 名前:デフォルトの名無しさん mailto:sage [2024/01/18(木) 04:18:08.52 ID:p4+mv2Ay.net]
- RustはカーネルやOSコアの開発で存分に活躍してくれ🙏
- 891 名前:デフォルトの名無しさん mailto:sage [2024/01/18(木) 06:21:12.49 ID:vxth9lRp.net]
- ぺたんこおっぱい
ぽっこりおなか つるつるわれめ
- 892 名前:デフォルトの名無しさん [2024/01/19(金) 01:46:37.00 ID:qsekRxP5.net]
- プログラミング言語利用実態調査でRustが急落
https://www.nikkei.com/article/DGXZQOUC223M10S3A221C2000000/
- 893 名前:デフォルトの名無しさん [2024/01/19(金) 08:43:59.73 ID:q7Fi5Auv.net]
- >>875
それ日本だけのアンケートじゃん
- 894 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 08:55:08.16 ID:v7odrc0V.net]
- 登録が必要な記事貼るとか
- 895 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 10:17:52.92 ID:9hGbEahh.net]
- >>875
日本でもクソ言語ってバレ始めてるなw
- 896 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 10:49:32.99 ID:Z0EBK6tx.net]
- そもそもrustを使う場面があるか?って話
wasmは始まる前からオワコンだし、組み込みシステム開発してる人なんて割合で見ればプログラマの中でごく一部だし
- 897 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 11:13:07.05 ID:vjpbBz8R.net]
- >>879
ごく一部だというのが仮に事実だとしても、少ないからって要らないってわけでもないだろ。 そこそこの規模だと C よりは Rust のほうがいいわ。
- 898 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 11:19:17.56 ID:EYCY+PGA.net]
- >>875
ちゃんとリンク貼れ無能 スキルアップしたい言語はPythonとJavaScript、不動の不人気言語はCOBOL 安藤 正芳 日経クロステック/日経コンピュータ https://xtech.nikkei.com/atcl/nxt/column/18/02670/112900003/
- 899 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 11:27:47.52 ID:uugkJRQ7.net]
- 「実際に仕事で使われているプログラミング言語」(2023)
https://qiita.com/mmake/items/b346cb32ccc3bcb5d03f 日本でのRustの使用実態が全く見られないの笑えるな
- 900 名前:デフォルトの名無しさん [2024/01/19(金) 11:34:00.68 ID:EoDClT2o.net]
- Rustは業務で使用する言語ではない
- 901 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 11:36:55.28 ID:arzVgFZ3.net]
- 使われてる言語ランキング見てると、CやC++、Rustみたいな組み込み開発用言語は全体から見ればもはやプログラミングの中でもマニアックな分類なんやね
ブログラマといえばWebサービス関連の人ってイメージになっちゃった
- 902 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 11:48:30.00 ID:vjpbBz8R.net]
- とはいえそれを支えるホスト環境 (OS) や処理系は大抵の場合に C とかで書かれてるんだけどな。
- 903 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 11:49:23.47 ID:pW7O4nZv.net]
- RustがC/C++の代わりになるのは間違いないのだけれどね
富士通さんはRustの普及をもっと頑張ってくれよ
- 904 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 12:01:24.14 ID:pW7O4nZv.net]
- >>885
C/C++からRustへの書き換え作業は大変だからね 脆弱性の解消のために徐々にRustへの置き換えが進んでるから2030年頃にはだいぶ完了してるっしょ
- 905 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 12:05:10.29 ID:pW7O4nZv.net]
- 有名どころだと
ProssimoがsudoやzlibのRust実装を頑張ってるよね https://github.com/memorysafety
- 906 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 12:05:22.87 ID:vjpbBz8R.net]
- デバイスドライバとかは C のほうが楽だけど
言語処理系くらいのレイヤだと大部分は Rust で書いたほうが楽そうだなーとは思う。
- 907 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 12:26:38.25 ID:CZFLW0PQ.net]
- そろそろ実装に入れそうだけど。Rustを勉強したことを少し後悔ぎみ
オブジェクト指向言語しか触ったことなかったから取得するのにガチで一ヶ月(130時間)かかった chatgptに聞いた感じだと、これでも割と早い方らしい。おとなしくC/C++を使えばよかった
- 908 名前:デフォルトの名無しさん [2024/01/19(金) 12:33:55.04 ID:3hcnICbb.net]
- 【AI】Googleの医療面接特化AI「AMIE」は人間よりも正確な診断が可能&患者への印象に優れるという研究結果 [すらいむ★]
https://egg.5ch.net/test/read.cgi/scienceplus/1705583722/l50 【AI】Google DeepMindが数学オリンピックレベルの幾何学問題を解けるAIを発表、人間の金メダリストに近い性能を発揮 [すらいむ★] https://egg.5ch.net/test/read.cgi/scienceplus/1705583476/l50 【AI】大学入試共通テスト、3つのチャットAIに解かせてみたら? GPT-4はバケモノだった [すらいむ★] https://egg.5ch.net/test/read.cgi/scienceplus/1705585402/l50 【ナゾロジー】「株価の変動を粒子の振動として理解」量子力学で株式市場の法則を読む! [すらいむ★] https://egg.5ch.net/test/read.cgi/scienceplus/1705583580/l50 【AI】NTT、自分の分身AIを低コストで作る技術。自分の合成音声を簡単に作れる技術も [すらいむ★] https://egg.5ch.net/test/read.cgi/scienceplus/1705583313/l50 ボイス・トォ・スカルのコアプログラムの一部は上記を統合している
- 909 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 13:26:04.84 ID:eEzmAF9q.net]
- >>890
130時間はサンクコストなので0時間の時点における正解は現時点でも正解 ってAIは教えてくれなかったの?
- 910 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 13:41:00.69 ID:CZFLW0PQ.net]
- C/C++, java, pythonの経験があるから、Rustを取得するのに50時間かからないだろうと思ってた時期が僕にもありました
ヌルポが怖いからRustを使うけど……歯を食いしばって捻出した130時間を投資回収できるかは神のみぞ知る
- 911 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 13:47:10.87 ID:vjpbBz8R.net]
- C/C++ の経験があってそんなに時間かかるか?
「習得」というのがどの程度の基準で見るかにもよるけど いわゆる the book を一通り読んだ後なら コンパイラがあまり助けてくれないところ (unsafe) を除けば マニュアルを見ながら書けばだいたいなんとかなる程度には使えそうなもんだと思うんだが。
- 912 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 13:56:01.98 ID:arzVgFZ3.net]
- C/C++を適当にやってたせいでRustでつまづくってのはありそう
- 913 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 14:12:09.59 ID:CZFLW0PQ.net]
- >>894
最近はpythonで仕事する機会が多くて、C/C++を4年ほど触ってなかったのと、 仕事の後に疲れた頭で勉強したから体力的にキツかったのと。。。 the bookを読むだけで90時間はかかったわ。検索モジュールを開発しようと思ってるんだけど いきなり実装に入るより読経した方がマシな感じで、regexのコードを読んでる 既に10時間読経に捧げて、あと10時間は追加の読経が必要な感じ この後、形態素解析エンジンのコードも読む必要があるから、追加で20時間はお勉強する予定であわせて130時間 ……重いです
- 914 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 14:23:24.55 ID:arzVgFZ3.net]
- >>896
おつかれよくがんばった
- 915 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 14:50:46.17 ID:tvouuqwU.net]
- >>896
the bookでの90時間の中身がわからないので何とも言えないかな bookだけを読んだのか それともdocsやreferenceと行き来して読んだのか サンプルコードくらいのことを書けるようになっただけなのか それとも各機構や機能を本質的に理解したのでdocsなど見ればbookに書かれてないことも書けるようになったのか などピンキリだよね
- 916 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 15:08:45.88 ID:IG9zAVYP.net]
- >>890
一般的にですが、 自分が使いたい新たな言語の学習で、辛いとかキツいとか後悔とか感じる人はプログラマーに向いていません。 プログラマーに向いてる人たちにとっては、新たな学習や会得はワクワク楽しくてその時間を後悔することもありません。
- 917 名前:デフォルトの名無しさん [2024/01/19(金) 15:23:39.42 ID:w30sYh7E.net]
- >>899
禿同だな
- 918 名前:デフォルトの名無しさん [2024/01/19(金) 15:25:17.10 ID:1KLWZB9m.net]
- 件の人は質問がどれもバカっぽかったから習得からは程遠い印象
- 919 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 16:19:14.85 ID:vjpbBz8R.net]
- Rust の個々の機能が難しいとは感じないけど
綺麗に噛み合うように全体を設計するのは C++ とは違う感覚が要るから 大きいプログラムを綺麗に設計しようとしたら最初はしんどいかも。 ボトムアップ的なスタイルで書いていくのをオススメする。
- 920 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 16:39:45.44 ID:8qrrLmZj.net]
- 逆かな
みんなリファクタリングが機能しないからRustだとボトムアップじゃだめだと分かっかんだよ
- 921 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 16:40:26.29 ID:Rx8gKVuk.net]
- the book自体の難しさがあるというか
- 922 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 17:22:29.33 ID:5TL7zSTv.net]
- the bookを頭から読むやつなんているんだ
大してわかりやすくもないし 説明が冗長な感じだからChatGPT使った方が良いぞ
- 923 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 17:23:51.53 ID:vjpbBz8R.net]
- 初心者にとって知らんことが書いてあるんだからそんなにスラスラとは読めないのは当たり前だし、文章自体に問題があるようには感じないな。
改善すべき点がゼロなわけではないが、少なくとも C++ を分かっているくらいの人が最初に読むには十分すぎるほどに良書じゃないの。
- 924 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 17:34:10.12 ID:vjpbBz8R.net]
- 説明対象がもつ難易度より分かりやすい説明があったとしたらその説明は嘘であるか不足しているってことだ。
本来の難易度は後にならないと分からないから学習者本人には見分けられない。
- 925 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 17:55:40.81 ID:88sLHWJm.net]
- ガリ勉完璧主義者ほど隅から隅まで理解しようとするけど
要領よくChatGPTを使いこなすチャラ男に天然GPTとしてカモられている
- 926 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 18:00:19.70 ID:88sLHWJm.net]
- 天然GPT本人はマウントして気持ち良くなりたいから他のみんなと勉強会じゃなくて家でガリ勉なんだ
- 927 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 18:05:32.43 ID:5TL7zSTv.net]
- 作りたいものを決めてそれを実現するための知識をChatGPTで調べるというやり方のほうがはるかに効率が良いよ
多少間違ったこと教えてきたり 古かったりするけどそれはもう気にしてたら仕方がないので 無視してどんどん手を動かすほうが良い
- 928 名前:デフォルトの名無しさん [2024/01/19(金) 18:15:21.92 ID:1hwMDgMT.net]
- The Bookは簡潔にまとめるために説明をやや端折り気味
書いてる内容自体が難しいわけじゃないけど深い理解には至らないから腹落ち感を得にくい あんまり期待しすぎず無料で読める基本チュートリアルとして捉えておくべき
- 929 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 18:26:39.26 ID:OWRF5bQs.net]
- ところでこのスレには組み込み開発でRustを使ってる人はいるの?
- 930 名前:デフォルトの名無しさん [2024/01/19(金) 18:38:50.67 ID:5qNxVIXw.net]
- 組み込みは頭おじいちゃんが支配してるからRust使える人いないよ
- 931 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 18:49:19.87 ID:AbS8PLZw.net]
- そう組み込みも重要な分野だから、これにRustが皆無な時点で大手では大々的に採用されていないって事、せいぜい窓際
「実際に仕事で使われているプログラミング言語」(2023) https://qiita.com/mmake/items/b346cb32ccc3bcb5d03f
- 932 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 18:52:09.31 ID:wGMq60ju.net]
- そうだ窓際追い出し目的でおじいちゃんにRustやらよう
- 933 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 18:53:27.57 ID:wGMq60ju.net]
- そうだ窓際追い出し目的でおじいちゃんにRustやらせよう
本当にあるな
- 934 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 18:54:40.94 ID:75Zji/CQ.net]
- 今時の組み込みって何使ってるんだろ?
- 935 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 18:55:15.30 ID:Nlxayr7x.net]
- >>903
Rustでもリファクタリング前提で書き始めるのがいいよ 早すぎる構造決め打ちや早すぎる最適化などはせずリファクタリングで対応
- 936 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 19:00:48.51 ID:SK8TlxrV.net]
- >>899
んなアホな。 一般的というなら「石の上にも三年」とも「下手の横好き」とも言うから、嫌いだからと言って不向きとは言えない。
- 937 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 19:08:03.87 ID:pqBZI8v7.net]
- 格言おじいちゃん、窓際組み込み?
- 938 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 19:08:58.61 ID:pqBZI8v7.net]
- 格言は説得力とは真逆だと思うの
- 939 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 19:10:50.73 ID:+7/a4sFt.net]
- 自分がこうだから他人もこうあれ
って考えは時代にそぐわない老害感がある
- 940 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 19:11:44.46 ID:pqBZI8v7.net]
- 論理的でもなく屁理屈にも劣ります
- 941 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 19:12:08.48 ID:SK8TlxrV.net]
- >>896
Rustは絶壁の学習曲線だから、段階的な学習は難しい。少なくともスタックフレームの動きを意識できないとキツイと思う。 Rustを使った開発も、小さく始める段階的開発とかきついんじゃない?ひたすらスクラップ&ビルド繰り返しそう。
- 942 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 20:04:18.16 ID:U1u9K+K0.net]
- >>924
スタックフレームはコンピュータの基礎知識であってC言語でも必須でありそれをRustの問題にする人はいない 段階的開発がキツいという主張もそんなことはなく根拠もない
- 943 名前:デフォルトの名無しさん mailto:sage [2024/01/19(金) 21:01:18.97 ID:vjpbBz8R.net]
- 全体を綺麗に構成することはしづらくても小さなモジュール単位でならそれなりに構成できるからそれを繰り返せばいい。
全体の構成を考えてから作るよりは汚いだろうけど、綺麗な全体の構成を考えるなんていう出来もしないことをやるよりはそういうボトムアップ方式のほうが少なくとも途中まではまあまあに出来る。 もちろんちゃんと全部をまともに構成できるだけの能力を身に付けられるならそれに越したことはないよ。 でも実際問題として初心者にはできないじゃんと思ったからボトムアップ方式のほうが(初心者の内は)よさそうと考えてる。
|

|