公式
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 part23
https://mevius.5ch.net/test/read.cgi/tech/1708677472/
Rust part24
■ このスレッドは過去ログ倉庫に格納されています
2024/05/27(月) 06:41:26.82ID:T4AFD1f4
2024/05/27(月) 06:42:29.23ID:T4AFD1f4
Rust The Book (日本語版)
https://doc.rust-jp.rs/book-ja/
Rust edition guide (日本語版)
https://doc.rust-jp.rs/edition-guide/
Rust by example (日本語版)
https://doc.rust-jp.rs/rust-by-example-ja/
Rust cookbook (日本語版)
https://uma0317.github.io/rust-cookbook-ja/
Rust API guideline (日本語版)
https://sinkuu.github.io/api-guidelines/
Rust nomicon book (日本語版)
https://doc.rust-jp.rs/rust-nomicon-ja/
Rust async book (日本語版)
https://async-book-ja.netlify.app/
Rust WASM book (日本語版)
https://moshg.github.io/rustwasm-book-ja/
Rust embeded book (日本語版)
https://tomoyuki-nakabayashi.github.io/book/
Rust enbeded discovery (日本語版)
https://tomoyuki-nakabayashi.github.io/discovery/
Rust Design Patterns (日本語版)
https://qiita.com/Yappii_111/items/4ccc3a8461cdd4035651
https://qiita.com/Yappii_111/items/654717e6a6a980722189
Rust API guideline (日本語版)
https://sinkuu.github.io/api-guidelines/
https://doc.rust-jp.rs/book-ja/
Rust edition guide (日本語版)
https://doc.rust-jp.rs/edition-guide/
Rust by example (日本語版)
https://doc.rust-jp.rs/rust-by-example-ja/
Rust cookbook (日本語版)
https://uma0317.github.io/rust-cookbook-ja/
Rust API guideline (日本語版)
https://sinkuu.github.io/api-guidelines/
Rust nomicon book (日本語版)
https://doc.rust-jp.rs/rust-nomicon-ja/
Rust async book (日本語版)
https://async-book-ja.netlify.app/
Rust WASM book (日本語版)
https://moshg.github.io/rustwasm-book-ja/
Rust embeded book (日本語版)
https://tomoyuki-nakabayashi.github.io/book/
Rust enbeded discovery (日本語版)
https://tomoyuki-nakabayashi.github.io/discovery/
Rust Design Patterns (日本語版)
https://qiita.com/Yappii_111/items/4ccc3a8461cdd4035651
https://qiita.com/Yappii_111/items/654717e6a6a980722189
Rust API guideline (日本語版)
https://sinkuu.github.io/api-guidelines/
2024/05/27(月) 06:43:12.56ID:T4AFD1f4
Rust Reference Book
https://doc.rust-lang.org/reference/
Rust Standard Library
https://doc.rust-lang.org/std/
Rust rustc Book
https://doc.rust-lang.org/rustc/
Rust rustdoc Book
https://doc.rust-lang.org/rustdoc/
Rust rustup Book
https://rust-lang.github.io/rustup/
Rust Cargo Book
https://doc.rust-lang.org/cargo/
Rust unstable Book
https://doc.rust-lang.org/nightly/unstable-book/
Rust macro Book
https://danielkeep.github.io/tlborm/book/
Rust CLI (Command Line Interface) apps Book
https://rust-cli.github.io/book/
Rust Future Book
https://cfsamson.github.io/books-futures-explained/
Rust async-std Book
https://book.async.rs/
Rust tokio Book
https://tokio.rs/tokio/tutorial
Rust serde Book
https://serde.rs/
https://doc.rust-lang.org/reference/
Rust Standard Library
https://doc.rust-lang.org/std/
Rust rustc Book
https://doc.rust-lang.org/rustc/
Rust rustdoc Book
https://doc.rust-lang.org/rustdoc/
Rust rustup Book
https://rust-lang.github.io/rustup/
Rust Cargo Book
https://doc.rust-lang.org/cargo/
Rust unstable Book
https://doc.rust-lang.org/nightly/unstable-book/
Rust macro Book
https://danielkeep.github.io/tlborm/book/
Rust CLI (Command Line Interface) apps Book
https://rust-cli.github.io/book/
Rust Future Book
https://cfsamson.github.io/books-futures-explained/
Rust async-std Book
https://book.async.rs/
Rust tokio Book
https://tokio.rs/tokio/tutorial
Rust serde Book
https://serde.rs/
2024/05/27(月) 08:12:23.89ID:8cya6pTK
Cloudflare、HTTPプロキシ開発用RustフレームワークPingoraをオープンソース化
ttps://www.infoq.com/jp/news/2024/03/cloudflare-open-sources-pingora/
ttps://www.infoq.com/jp/news/2024/03/cloudflare-open-sources-pingora/
5デフォルトの名無しさん
2024/05/27(月) 19:41:54.75ID:SG55qLTi >>1 乙
2024/05/27(月) 21:05:50.42ID:DNPKhjhD
なんで黙ってワッチョイスレのリンク消したの?
2024/05/27(月) 21:10:59.53ID:uDjd5cKa
>>1乙ust
2024/05/27(月) 23:31:45.00ID:NihCR1ik
rust-lldって魔法?
2024/05/28(火) 23:01:09.87ID:r9uY5dzk
「Sudo for Windows」はRustで開発されている!
メモリ安全が重視される分野で採用が広がるRust言語
ttps://forest.watch.impress.co.jp/docs/serial/yajiuma/1594981.html
次期大型更新「Windows 11 バージョン 24H2」に
搭載されることが確定した「Sudo for Windows」が、
Rust言語で開発されていることがわかった。
メモリ安全が重視される分野で採用が広がるRust言語
ttps://forest.watch.impress.co.jp/docs/serial/yajiuma/1594981.html
次期大型更新「Windows 11 バージョン 24H2」に
搭載されることが確定した「Sudo for Windows」が、
Rust言語で開発されていることがわかった。
2024/05/29(水) 09:39:32.15ID:YfGaww9I
完全にRustは残る言語になってしまったね
2024/05/29(水) 11:05:17.42ID:frLAIx0l
言語の生き残るか否かもWindows次第かな
12デフォルトの名無しさん
2024/05/29(水) 13:45:30.43ID:6x6vV3tF この言語を支持してるやつは総じてデバッグ能力が低い
2024/05/29(水) 13:56:47.79ID:HitYRPv5
なるほどそれはもうやるしかないね
14デフォルトの名無しさん
2024/05/29(水) 14:07:58.08ID:377og/WO 今更こんなのだけで一喜一憂するの?
ちなみにAzureCLIもRustだぞ
MacでHomebrewでインスコする時にRustのコンパイル始まって凄く時間掛かる
ちなみにAzureCLIもRustだぞ
MacでHomebrewでインスコする時にRustのコンパイル始まって凄く時間掛かる
2024/05/29(水) 14:55:30.35ID:0Pyy6QQw
ʕ◔ϖ◔ʔ
2024/05/29(水) 16:53:17.15ID:bMu5OGl6
>>12
テスト走らせるんじゃあかんの?
テスト走らせるんじゃあかんの?
17デフォルトの名無しさん
2024/05/29(水) 17:06:12.76ID:643EHPjo2024/05/29(水) 19:19:21.66ID:AbIsIlhD
そういや、sudoとかの引数のバッファオーバーフローとかって、std::env::args_os使っていれば安全なのかな?
2024/05/29(水) 22:46:32.28ID:b7HyT2Iv
unsafeはRust外のFFI/API境界でのやむを得ない出現か
unsafeを使うことで効率的かつ安全なパターンになる時のいすれかだが
後者のパターンは特定のプログラムから切り離してsafeなインターフェースを提供する汎用ライブラリに閉じ込めるのが好ましく
標準ライブラリはそのようにして出来ている
unsafeを使うことで効率的かつ安全なパターンになる時のいすれかだが
後者のパターンは特定のプログラムから切り離してsafeなインターフェースを提供する汎用ライブラリに閉じ込めるのが好ましく
標準ライブラリはそのようにして出来ている
2024/05/30(木) 12:31:47.54ID:D8KcVhgB
つまりwindowsクレートはsafe interfaceの提供をサボってるということ?
2024/05/30(木) 12:33:13.48ID:VdmPCECN
Rustと外側との境界はunsafeにせざるを得ないのは当たり前なのに肝心なところはunsafeと言われてもなぁ。
レビューすべき箇所が局所化されるだけでも十分なメリットだろ。
レビューすべき箇所が局所化されるだけでも十分なメリットだろ。
2024/05/30(木) 14:46:49.26ID:YCUWE+u3
23デフォルトの名無しさん ころころ
2024/05/30(木) 16:38:16.78ID:YSwCBZpR Rust製Webサーバーで一番使われてるフレームワークって何だろ
MySQLと親和性高いなら使ってみたい
MySQLと親和性高いなら使ってみたい
2024/05/30(木) 18:56:43.74ID:d8P/nzpp
>>23
axumとsqlx
axumとsqlx
2024/05/30(木) 21:16:17.01ID:YSwCBZpR
>>24
ありがと、試してみよう
ありがと、試してみよう
2024/05/31(金) 21:36:08.12ID:PEZeXgnU
コンパイル前にcargo sqlx prepareでDBサーバからデータの型を得ておくことで静的型チェックできる仕組みなんだね
2024/06/01(土) 10:39:11.44ID:8vnvDrFp
へー、便利そう。
だけどこういう仕組みってカラム追加時のDBのマイグレーション辺りが入ってくるととたんに難しくなるんだよなぁ。
だけどこういう仕組みってカラム追加時のDBのマイグレーション辺りが入ってくるととたんに難しくなるんだよなぁ。
2024/06/01(土) 22:15:15.67ID:hl1xX5EU
>>27
そういうDBテーブル構成変更するとどんなプログラミング言語でも何らかの対応が必要となるよ
Rustでsqlx利用ならばDB構成変更した時にcargo sqlx prepareで型をDBから入手し直せばコンパイル時に静的に型チェックされるから楽で安全だね
そういうDBテーブル構成変更するとどんなプログラミング言語でも何らかの対応が必要となるよ
Rustでsqlx利用ならばDB構成変更した時にcargo sqlx prepareで型をDBから入手し直せばコンパイル時に静的に型チェックされるから楽で安全だね
2024/06/01(土) 22:32:36.24ID:M7bbwRO6
DBの構成管理をどこで行うかという話
その辺の道具類は他言語に比べてRustはまだまだなので
DB側のツールで管理しておくという昔ながらのやり方が現状のベスト
その辺の道具類は他言語に比べてRustはまだまだなので
DB側のツールで管理しておくという昔ながらのやり方が現状のベスト
2024/06/01(土) 22:35:04.27ID:25uf1xqx
スクラッチのPHPみたいにSQL直書きからのexecuteはナシ?
2024/06/01(土) 22:44:45.41ID:azEYwwHp
2024/06/01(土) 23:58:30.16ID:K7NGQLE/
実行計画はDBのデータではないから型チェックは意味ないような
2024/06/02(日) 09:14:40.51ID:plnJaR5e
2024/06/02(日) 12:55:11.71ID:vGgRDkgp
接続相手の仕様が形式化されたデータとして存在すれば
Rust 上の関数との対応付けを自動化できることもあると思うけど
形式化されたデータは誰かが準備しないといけないことには変わりないからなぁ。
Windows では API の仕様記述を WinMD と呼ばれる形で標準化してるけど
それだって WinRT (ちょっと高級な API) が前提になっているのでそんなに万能ではない。
あらゆる仕様を記述できるほど自由度 (複雑さ) のあるフォーマットにしたら結局は
プログラムを書くのとそんなに変わらんようになるので自動化できる部分は自動化して
ややこしい場合は手書きするという割り切りしないと仕方ない。
Rust 上の関数との対応付けを自動化できることもあると思うけど
形式化されたデータは誰かが準備しないといけないことには変わりないからなぁ。
Windows では API の仕様記述を WinMD と呼ばれる形で標準化してるけど
それだって WinRT (ちょっと高級な API) が前提になっているのでそんなに万能ではない。
あらゆる仕様を記述できるほど自由度 (複雑さ) のあるフォーマットにしたら結局は
プログラムを書くのとそんなに変わらんようになるので自動化できる部分は自動化して
ややこしい場合は手書きするという割り切りしないと仕方ない。
2024/06/02(日) 23:32:50.95ID:JYjUVuWd
Unix系システムコールとの共通部分は
ファイルシステムなど標準ライブラリとして安全なインターフェイスを提供できてるね
Windows特有部分も同じようにMicrosoftがsafeなライブラリを公式に用意することが望ましいのかな
ファイルシステムなど標準ライブラリとして安全なインターフェイスを提供できてるね
Windows特有部分も同じようにMicrosoftがsafeなライブラリを公式に用意することが望ましいのかな
2024/06/03(月) 08:58:28.03ID:DC3aHaSn
>>35,36
なるほど。結構時間経ったと思うが厳しい。
Microsoftがsafeなライブラリを公式に用意するまで、
プロダクションでのRust採用は様子見するのが良さそうだ。
Linux特有の機能が必要な場合も同様に様子見するのが良さそうだ。
なるほど。結構時間経ったと思うが厳しい。
Microsoftがsafeなライブラリを公式に用意するまで、
プロダクションでのRust採用は様子見するのが良さそうだ。
Linux特有の機能が必要な場合も同様に様子見するのが良さそうだ。
2024/06/03(月) 09:53:26.77ID:oYPTQzXH
>>37
Windows クレートはもうかなり充実してるよ。
メタデータからの自動生成なので網羅的だし、 safe でいけるメソッドは safe になってる。
unsafe なのは本質的に unsafe なのでどうしようもないし。
Readme に書いてある例が古い Win32 API を使うスタイルの書き方だから印象が悪いのかなぁ……。
Windows クレートはもうかなり充実してるよ。
メタデータからの自動生成なので網羅的だし、 safe でいけるメソッドは safe になってる。
unsafe なのは本質的に unsafe なのでどうしようもないし。
Readme に書いてある例が古い Win32 API を使うスタイルの書き方だから印象が悪いのかなぁ……。
2024/06/03(月) 12:15:09.36ID:xZhYxepu
2024/06/03(月) 15:47:20.28ID:8wxJn/St
>>38
>本質的に unsafe
良いキーワード出た、深掘りしてくれ
これとか
github.com/tokio-rs/io-uring
io_uringが本質的にunsafeだとでも思ってるのかな?
>本質的に unsafe
良いキーワード出た、深掘りしてくれ
これとか
github.com/tokio-rs/io-uring
io_uringが本質的にunsafeだとでも思ってるのかな?
2024/06/03(月) 16:27:42.41ID:PBVPy7rj
本質的にC++な機能といえば多重継承
多重継承は他の言語に移植できない
万一できたとしたらそれは自動生成ではなく手作業で工夫されたコードだろうね
多重継承は他の言語に移植できない
万一できたとしたらそれは自動生成ではなく手作業で工夫されたコードだろうね
2024/06/03(月) 17:17:59.54ID:/dTVE8NF
Win32APIを素で提供しようと思ったらunsafeなのは仕方ないので、もう一枚ハイレベルなラッパーかませてsafeにしてほしいところではある。
2024/06/03(月) 19:27:13.29ID:oYPTQzXH
だからモダンな WinRT に移行しようね!
2024/06/03(月) 20:11:34.31ID:/dTVE8NF
WinRTってWin32のAPI網羅できてるの?
モダンなAPIが古いのを機能的に網羅できてないから仕方なく使ってる気持ちなんだけど。
モダンなAPIが古いのを機能的に網羅できてないから仕方なく使ってる気持ちなんだけど。
2024/06/03(月) 20:49:12.70ID:oYPTQzXH
WinRT は「おおよそ」には Win32 API の機能を網羅しているが
根本的なパラダイムが違っていて単純には置き換えられない場合はある。
最初から WinRT を前提として作っていれば Win32 API 抜きで行けることは多いよ。
ゼロではないところがイライラするかもしれんけど。
根本的なパラダイムが違っていて単純には置き換えられない場合はある。
最初から WinRT を前提として作っていれば Win32 API 抜きで行けることは多いよ。
ゼロではないところがイライラするかもしれんけど。
2024/06/03(月) 21:57:04.03ID:7I637fUw
>>41
クラス多重継承は問題多すぎなダメな機能なので多くの言語で禁止している
クラス継承そのものが問題を多く抱えているため各機能のインターフェースなどを実装するのが望ましい
Rustならば複数のトレイト境界を指定することでそれら複数のトレイト機能を実装した任意の型を対象に抽象的なプログラミングができる
クラス多重継承は問題多すぎなダメな機能なので多くの言語で禁止している
クラス継承そのものが問題を多く抱えているため各機能のインターフェースなどを実装するのが望ましい
Rustならば複数のトレイト境界を指定することでそれら複数のトレイト機能を実装した任意の型を対象に抽象的なプログラミングができる
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【無言】中国怒らせた高市首相→1週間だんまり、国民に実害も説明なし 中国問題を避けてスルー… ★5 [BFU★]
- 「日本はパンダがいなくなる状況に直面するだろう」 中国メディア、専門家の見方伝える [♪♪♪★]
- 【速報】10月の消費者物価3.0%上昇 [蚤の市★]
- 止まらぬ「日本売り」 高市財政への懸念で進む金利上昇と円安 ★2 [蚤の市★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★12 [樽悶★]
- 【コメ】価格「5キロ4316円」で最高値を更新…「おこめ券」が解決につながらない根本的な理由 コメ農家が危機感をあらわにする「離農」 [ぐれ★]
- 【悲報】米国務省「米国は台湾海峡における平和と安定を望む。いかなる一方的な現状変更の試みにも反対する」タリバンの声明を受け [974680522]
- 中国父「高市、今回はこの辺にしといたるわ!」 世界の供給源としての信頼維持のためレアアース制裁見送りの公算 [271912485]
- 高市早苗、会食せず議員宿舎に籠って勉強の毎日「飲んでる暇があれば、政策を練り、資料を読みたい」 [485187932]
- 愛国保守、日本を本気で潰しにかかる [819729701]
- 【悲報】Suica、セキュリティを突破されたのが販売されはじめる [347751896]
- 東大名誉教授「中国は誤った宣伝を繰り広げ、対立を煽り、経済の失敗による国内の不満を日本に向けている」 [903292576]
