📄️ トレイト内の type は「関連型」 — ジェネリクス引数との使い分けは「1 つの型に impl が何個必要か」
TL;DR
📄️ Rustの振る舞い配置 — 基本は impl ベース、ただしメモリ(借用)の事情で free 関数を選ぶ場合がある
TL;DR
📄️ Rustで重複コードを消す手段の比較と使い分け(関数/ジェネリクス/トレイト/マクロ/const fn/build.rs)
TL;DR
📄️ Rust で依存を差し替えるには「trait で注入」か「注入せず sans-IO」の2択
TL;DR
📄️ enumの振る舞いは`impl`に閉じ込める — バリアント追加の影響範囲と式の問題
TL;DR
📄️ 結末・分岐を表す enum の命名 — `Result` サフィックスと汎用サフィックスを避け、概念名そのものを使う
TL;DR
📄️ Rust でイベント・命令を型にするのは一般的か — enum of structs パターンと Op という語彙
TL;DR
📄️ Rust のクロージャトレイト Fn / FnMut / FnOnce の使い分け
TL;DR
📄️ Rust で自作関数に `collect` と名付けない(Iterator::collect との衝突)
TL;DR
📄️ From実装の「型への紐づき」と「クレート依存の向き」は別物 — 外部DTO→ドメイン変換をどこに置くか
TL;DR
📄️ ID 型は type エイリアスか newtype か — pub type UserId = u64; で起きること
TL;DR
📄️ 外部依存を自前サブクレートに分離して差し替えの影響範囲を局所化する
TL;DR
📄️ mod.rs を使わない Rust 2018+ 新スタイルのモジュール構成
問題
📄️ Rustで複数のstructに共通するフィールドを共有する — 合成+アクセサtrait、Derefで継承を模倣しない
TL;DR
📄️ sort_by_key は stable sort だが同値の tie-break は明示すべき
問題
📄️ Rust で肥大化した struct 処理を分割するとき、`impl` と自由関数のどちらを選ぶか
TL;DR
📄️ Rust の type は新しい型ではなく「別名」 — 型エイリアスの正体と使う場面・使わない場面
TL;DR
📄️ Rust の validate 関数は `Result<(), E>` でいいのか(parse, don't validate)
TL;DR
📄️ Rust で trait を定義すべきか — ポリモーフィズム 4 分類と open/closed set による判断
TL;DR