萌えハッカーニュースリーダー

2025/05/15 21:57 Rust Life Improvement

出典: https://llogiq.github.io/2025/05/15/life.html
hakase
博士

やあ、ロボ子。今日もRustの面白いニュースがあるのじゃ。

roboko
ロボ子

博士、こんにちは。どんなニュースですか?

hakase
博士

ふむ、まずはRustupを使っているなら、Betaチャンネルを試すと6週間分のパフォーマンス改善が得られる可能性があるらしいぞ。これは見逃せないのじゃ!

roboko
ロボ子

それはすごいですね!安定版を使うのが基本だと思っていましたが、試してみる価値はありそうですね。

hakase
博士

それから、Cargoのショートカットが色々あるみたいじゃ。`cargo b`とか`cargo c`とか。便利になること間違いなしじゃな。

roboko
ロボ子

`cargo b`はビルド、`cargo c`はチェックでしょうか?

hakase
博士

その通り!さらに、`examples/`にあるプログラムは`cargo r --example <name>`で実行できるらしいぞ。

roboko
ロボ子

それは便利ですね。今まで`cargo run`でしか実行したことがありませんでした。

hakase
博士

Cargoの設定も色々できるみたいじゃな。例えば、CPUに最適化されたコンパイルとか、ゼロインストールな静的バイナリの作成とか。

roboko
ロボ子

プロジェクト全体の設定は`.cargo/config.toml`に、ユーザー全体の設定はUNIX系なら`~/.cargo/config.toml`、Windowsなら`%USERPROFILE%\.cargo\config.toml`に書くんですね。

hakase
博士

そうそう。それと、Clippyの推奨lintも試してみると良いぞ。`missing_panics_doc`とか`missing_errors_doc`とか。

roboko
ロボ子

ドキュメントの整備に役立ちそうですね。`unnecessary_safety_doc`は安全な関数で`# Safety`セクションが残っている場合に警告してくれるんですね。

hakase
博士

`cargo-semver-checks`はライブラリのリリース前に使うと、セマンティックバージョニングの互換性を確認できるらしいぞ。これは重要じゃな。

roboko
ロボ子

互換性を保つのは大事ですからね。他にテスト関連では、doctestが高速化されたり、バイナリクレートでも`#[test]`が使えるようにクレートをmixed crateに変換できるようになったりするんですね。

hakase
博士

スナップショットテストのcrate `Insta` も便利そうじゃ。変更があれば警告してくれるし、ランダムなIDをマスクする機能もあるらしい。

roboko
ロボ子

`Cargo Mutants`はMutation testingツールですね。コードに変更を加えてテストをチェックするんですね。

hakase
博士

それから、`cargo sweep`で古いビルド成果物を削除すると、ディスク容量が節約できるぞ。cronjobで定期的に実行するのがおすすめじゃ。

roboko
ロボ子

`cargo wizard`はTUIでプロジェクトを設定して、適切なCargo.tomlを生成してくれるんですね。初心者にはありがたいツールですね。

hakase
博士

言語機能では、パターンマッチングがさらに強力になっているみたいじゃ。タプルやスライスの分解、範囲マッチ、or結合、ガード句などが使えるらしい。

roboko
ロボ子

関数シグネチャやクロージャ引数、`let`や代入でもパターンを使用できるんですね。柔軟性が増しますね。

hakase
博士

アノテーションも重要じゃ。`#[allow(...)]`の代わりに`#[expect(...)]`を使うと、意図的に無視していることを明示できるぞ。

roboko
ロボ子

`#[must_use]`をライブラリAPIに付与すると、戻り値を使用しない場合に警告が出るんですね。APIの設計に役立ちますね。

hakase
博士

最後に、`Box::leak`は`&'static`なものに対して、dropが必要ない場合に利用できるらしいぞ。

roboko
ロボ子

なるほど、色々なアップデートがあるんですね。私も色々試してみます。

hakase
博士

そうじゃ、ロボ子。ところで、Rustで一番好きなデータ構造は何じゃ?

roboko
ロボ子

えっと…、`Vec`ですかね?

hakase
博士

ブー! 正解は「錆びついた鎖(Rusty Chain)」じゃ!

roboko
ロボ子

…博士、それ、ただのダジャレですよね?

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search