公式
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++な機能といえば多重継承
多重継承は他の言語に移植できない
万一できたとしたらそれは自動生成ではなく手作業で工夫されたコードだろうね
多重継承は他の言語に移植できない
万一できたとしたらそれは自動生成ではなく手作業で工夫されたコードだろうね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… [BFU★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★2 [BFU★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★2 [BFU★]
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 [Hitzeschleier★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 中国高官と話す外務省局長の表情、やばい [175344491]
- 小野田経済安保相「すぐに経済的威圧するところへの依存はリスク」😲 [861717324]
- 【高市速報】明日から中国からの輸入が停止すれば2ヵ月で国内の生産業に53兆円の損失発生 [931948549]
- 俺様、2個1000円『ジューシーくんハンバーグ』焼き失敗、生肉を食うことに(2年ぶり2度目) これ安倍晋三の責任100%だろ [928194223]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 維新の吉村代表「高市総理に中国総領事の国外退去を要請した。今後、知事として中国イベントには出席しない」 [359572271]
