YAGNI(将来のために作り込まない)教育コンテンツ:全8章アウトライン 🧠✨
(前提:C# 初級〜中級/設計は超入門/Windows/Visual Studio中心+VS CodeもOK/CopilotやCodexなどAI導入済み🤖💡)
第1章:YAGNIってなに?「作らない勇気」の入門 🌱🙂
ねらい🎯:YAGNIを“誤解なく”説明できるようになる
- YAGNIの一言定義:「今必要なものだけ作る」🧩
- よくある誤解を解消(手抜きじゃないよ!)🧯
- KISS / DRY との関係(ざっくり)🧁
- ミニ演習📝:「今必要」だけに絞る練習✂️
- AI活用🤖:MVP範囲をAIに箇条書きさせる
- 成果物📦:自分用YAGNIルール1文
第2章:作り込みすぎのサインを見抜く 👀🚨
ねらい🎯:「それ今いる?」を見抜けるようになる
- 未来用の作り込みあるある📚(抽象化先行、汎用化しすぎ等)
- “今必要”の基準づくり🧭(受け入れ条件・ユーザー価値)
- ミニ演習📝:要件から「今やらない」を3つ選ぶ
- AI活用🤖:「過剰設計か?」をAIにレビューさせる
- 成果物📦:作り込みサインのチェックリスト
第3章:「今必要」を決める技術(スコープの切り方)✂️🗺️
ねらい🎯:小さく完成させる判断ができるようになる
- MVPの考え方(狭く深く)🍰
- ユースケース単位で切る🏃♀️(登録・一覧・検索など)
- 仕様を未来へ押し出す方法🧊(未実装境界を明示)
- ミニ演習📝:サンプル要件をMVPに削る(3画面以内)📱
- AI活用🤖:受け入れ条件をAIに作らせる✅
- 成果物📦:MVP仕様+受け入れ条件
第4章:YAGNIを支える実装スタイル(小さく作って育てる)🧱🌿
ねらい🎯:「作らない」と「後で詰む」を分ける土台を作る
- “後で足せる最小設計”の作り方🧰
- 小さなリファクタ前提で進める🔧
- ほんの少しのテストで守る🧪
- ミニ演習📝:最小アプリ(登録→一覧)を作る
- AI活用🤖:雛形・テストコードをAIに出させる
- 成果物📦:小さなアプリ+簡単テスト
第5章:C#でやりがちな“未来用設計”を安全に先送りする 🧯🧠
ねらい🎯:C#らしい過剰抽象化を回避できるようになる
- interfaceはいつ切る?🪓(差し替え/テストの痛みが出てから)
- DIコンテナはいつ入れる?📦(手動注入→必要になったら)
- パターンはいつ使う?🎭(困りごとから入る)
- ジェネリクス汎用化の目安🧬(重複が痛くなってから)
- ミニ演習📝:「先に作り込み版」をYAGNI的に削る✍️
- AI活用🤖:AIに逆質問させて判断材料を出す
- 成果物📦:C#版YAGNI判断ルール集
第6章:YAGNIで進める開発フロー(基本)🚶♀️✨
ねらい🎯:YAGNIを“手順”として回せるようになる
-
進め方テンプレ📌
- ①MVP → ②最小実装 → ③小リファクタ → ④次の1歩
-
YAGNIチェック観点👀
- 「受け入れ条件に必要?」✅
- 「未来のための仕組み増えてない?」🧨
-
ミニ演習📝:第4章アプリに小変更を入れて差分を確認👣
-
成果物📦:自分用の開発フロー(手順メモ)
第7章:AIと一緒にYAGNI(盛らせない使い方)🤖🧯
ねらい🎯:AIを味方にしつつ、過剰設計を防ぐ
-
AIが盛りがちなポイントを知る🎈😅
-
“盛らせない”指示テンプレ集🧾
- 「拡張性は考えすぎず今の要件だけで」など
-
AIレビューの使い方🕵️♀️
- 「過剰な抽象化ある?」「今必要な理由ある?」
-
ミニ演習📝:AI提案を“削る”練習✂️
-
成果物📦:Copilot/Codex用プロンプト集
第8章:最終ミニ課題(追加要件1つで育てる)🎓🌱
ねらい🎯:YAGNIで“育てる設計”を体験して終える
- 要求を1個だけ追加して改善(例:並び替え/簡単検索)🔁
- 差分が小さい=勝ち🏆
- 軽ADR🗒️:「入れなかった理由」を1枚書く
- 最終チェック✅:YAGNIチェックリストで自己採点
- 成果物📦:改善版アプリ+軽ADR+自己採点メモ