メインコンテンツまでスキップ

YAGNI(将来のために作り込まない)教育コンテンツ:TypeScript版・全8章アウトライン 🧠✨

(前提:TypeScript 初級〜中級/設計は超入門/Windows/VS Code/Copilot or CodexなどAI導入済み🤖💡)


第1章:YAGNIってなに?「作らない勇気」の入門 🌱🙂

ねらい🎯:YAGNIを“誤解なく”説明できるようになる

  • YAGNIの一言:**「今必要なものだけ作る」**🧩

  • よくある誤解を先に解消🧯

    • ✖ 手抜き、✖ 設計放棄、✖ 何も考えない
    • ◯ “未来予想の作り込み”をしない
  • KISS / DRY との関係(ふんわり)🧁

  • TypeScript開発でYAGNIが効く場面(個人開発あるある)📦

    • API設計、型設計、共通化、フォルダ構成
  • ミニ演習📝:

    • 「いつか作りたい機能」を10個→“今必要”を2個に絞る✂️
  • AI活用🤖:

    • 「この要件で“今作る範囲”を箇条書きにして」
  • 成果物📦:自分用YAGNIルール1文


第2章:作り込みすぎのサインを見抜く 👀🚨

ねらい🎯:「それ今いる?」を見抜けるようになる

  • TypeScriptで起きがちな“未来用の罠”🌀

    • 早すぎる抽象化(utils地獄、謎の汎用関数)😵‍💫
    • 先に型を盛りすぎる(Union爆発、Generics芸)🧨
    • “いつか差し替え”のためにinterface乱立🪓
    • APIクライアントを完璧に作ってからUIに行けない😇
  • “今必要”の判断基準🧭

    • 受け入れ条件にある?✅
    • 実際に変更要求が来てる?📩
  • ミニ演習📝:

    • サンプル要件から「今やらない」ものを3つ選ぶ(理由付き)✍️
  • AI活用🤖:

    • 「この設計、過剰なところある?赤信号ポイントを5つ」
  • 成果物📦:作り込みサインのチェックリスト


第3章:「今必要」を決める技術(MVPとスコープの切り方)✂️🗺️

ねらい🎯:小さく完成させる判断ができるようになる

  • MVP(最小で価値が出る形)を決める🍰

  • 例題(TypeScript向け題材)📚✨

    • 「推し活メモWebアプリ」:推しのライブ/配信/グッズをメモる📝🎀
  • ユースケース単位で切る🏃‍♀️

    • 追加する/一覧を見る/削除する(まずこれだけ)✅
  • 未来の機能は「TODOとして見える場所」に置く🧊

    • “未実装の境界”をちゃんと決める
  • ミニ演習📝:

    • 推し活メモを「3画面以内 or 1画面で完結」に削る📱
  • AI活用🤖:

    • 「受け入れ条件を5個書いて」
  • 成果物📦:MVP仕様+受け入れ条件


第4章:YAGNIを支える実装スタイル(小さく作って育てる)🧱🌿

ねらい🎯:「作らない」と「後で詰む」を分ける土台を作る

  • “後で足せる最小設計”ってどう作る?🧰

    • まず動く → 名前整える → 小さく分ける🔧
  • TypeScriptらしい最小構成(VS Code前提)💻

    • 小さめのReactでも、素のTSでもOK(教材ではシンプル優先)🙂
  • ほんの少しテストで守る🧪

    • 「ロジックだけ」をテスト(I/OやUIは薄く)
  • ミニ演習📝:

    • 推し活メモで「追加→一覧」をまず完成させる✅
  • AI活用🤖:

    • Copilotに「最小の実装で、読みやすさ優先で」と指示する
  • 成果物📦:最小アプリ(機能2〜3個)+簡単テスト


第5章:TypeScriptでやりがちな“未来用設計”を安全に先送りする 🧯🧠

ねらい🎯:型・共通化・レイヤーの作り込みを回避できるようになる

  • 型を盛りすぎ問題(最初は“素直な型”でOK)🧩

    • 「まず型は浅く、必要になったら強く」💪
  • Genericsは“痛みが出てから”🧬

  • utils / helpers の作りすぎを止める🚫

    • 共通化は“重複が増えてから”で十分
  • フォルダ構成を最初から大規模にしない📁

    • “1機能=1フォルダ”くらいからでOK
  • ミニ演習📝:

    • わざと盛った型・共通化例を見て、YAGNI的に削る✂️
  • AI活用🤖:

    • 「今の要件に必要な型だけに絞って書き直して」
  • 成果物📦:TypeScript版YAGNI判断ルール集


第6章:YAGNIで進める開発フロー(基本)🚶‍♀️✨

ねらい🎯:YAGNIを“手順”として回せるようになる

  • 進め方テンプレ📌

    • ①MVP → ②最小実装 → ③小リファクタ → ④次の1歩
  • YAGNIチェック観点👀

    • 「それ、受け入れ条件に必要?」✅
    • 「未来のための仕組みが増えてない?」🧨
  • ミニ演習📝:

    • 推し活メモに小さな変更(例:ピン留め⭐)を入れて差分を見る👣
  • 成果物📦:自分用の“開発フロー手順メモ”


第7章:AIと一緒にYAGNI(盛らせない使い方)🤖🧯

ねらい🎯:AIを味方にしつつ、過剰設計を防ぐ

  • AIが盛りがちなポイント🎈😅

    • “最初から完璧アーキ”にしたがる
    • 汎用化/抽象化/設定化を増やしがち
  • 盛らせない指示テンプレ集🧾✨

    • 「拡張性は考えすぎず、今の要件だけで」
    • 「使わない機能は追加しない」
    • 「型は最小、複雑なGenericsは禁止」
  • AIレビューの使い方🕵️‍♀️

    • 「今不要な抽象化どれ?」
    • 「削っても困らない箇所どれ?」
  • ミニ演習📝:

    • AI提案を“削る”練習(削った理由も書く)✍️
  • 成果物📦:Copilot/Codex用プロンプト集(YAGNI専用)


第8章:最終ミニ課題(追加要件1つで育てる)🎓🌱

ねらい🎯:YAGNIで“育てる設計”を体験して終える

  • 要求を1個だけ追加して改善🔁

    • 例:検索🔎/並び替え↕️/タグ付け🏷️(どれか1つだけ!)
  • “差分が小さい=勝ち”🏆✨

  • 軽ADR🗒️:「入れなかった理由」を1枚書く(未来の自分に優しい🙂)

  • 最終チェック✅:YAGNIチェックリストで自己採点💯

  • 成果物📦:改善版アプリ+軽ADR+自己採点メモ