コース一覧
Claude Code入門
任せる/書くの境界

Claude Code入門

AIコーディングエージェント「Claude Code」への指示の出し方、生成コードの読み方とレビュー、テストと安全確認、バグ修正から機能追加までの実践ワークフローを、毎レッスン実際にエージェントと開発しながら学びます。入門で自分が書いたおこづかい帳を、AIと一緒に機能拡張していきます。

1
Claude Codeとは
01. AIエージェントとは5分
02. 起動と最初の対話5分
03. はじめての指示5分
04. 動きのしくみ5分
05. つくる:最初の一巡6分
06. 第1章クイズ5分
2
基本操作
01. コードについて質問する5分
02. 修正を依頼する5分
03. 差分を読む6分
04. 動かして確かめる5分
05. 元に戻す5分
06. つくる:操作の一巡6分
07. 第2章クイズ5分
3
良い指示の出し方
01. 要件の伝え方5分
02. 受け入れ条件6分
03. タスクを分割する6分
04. 計画させてから実行6分
05. CLAUDE.mdを書く6分
06. つくる:指示の型6分
07. 第3章クイズ5分
4
レビューと安全
01. 生成コードを読む6分
02. 自分で試験する6分
03. テストを書かせる6分
04. 危険な操作の見極め6分
05. 修正の往復6分
06. つくる:レビュー一巡7分
07. 第4章クイズ5分
5
実践ワークフロー
01. バグ修正を任せる6分
02. 機能追加を任せる6分
03. リファクタを任せる6分
04. ドキュメントを書かせる6分
05. 知らないコードを解説させる6分
06. つくる:ワークフロー実践7分
07. 第5章クイズ5分
6
総合制作
01. 大型機能を共同実装8分
02. 総レビュー7分
03. 任せる/書くの境界6分
04. 自由拡張8分
05. 完成と次のステップ5分

任せる/書くの境界

境界は好みではなく検証コストで決まる

ここまでで、任せてうまくいった場面と、自分で書いた方が速かった場面の両方を経験したはずです。今回はその判断を言葉にして基準に変えます。

判断の軸は「難しいかどうか」ではありません。正しさを確かめるのにどれだけかかるかです。

プレーンテキスト

任せる 合っているかを、実行かテストで数秒で確かめられる 書く 合っているかを、確かめるのに読み込みが要る

難しい処理でも、入力と出力がはっきりしていればテストで一発で判定できます。逆に簡単な処理でも、正解が自分の頭の中にしか無いものは、返ってきたコードを1行ずつ読むしかありません。

任せてよいもの

次の3つは任せた方が速いです。

プレーンテキスト

形が決まっている 集計、整形、変換 答えが1つに決まる 境界値のテストを書く 量が多い 似た処理を10か所直す

共通するのは、期待する結果を先に書けることです。期待値が書けるなら、それはそのままテストになります。テストがあるなら、AI の出力を読まずに判定できます。

自分で書くべきもの

プレーンテキスト

仕様が自分の頭の中にしかない 業務の都合で例外が多い 間違えたときの影響が大きい (お金、削除、外部送信)

1つ目が特に多く出ます。おこづかい帳で「食費の中の外食だけ別扱いにしたい」は、あなたの家計の都合です。AI は一般的な家計簿の常識で埋めますが、その常識はあなたのものではありません。指示を書くのに10分かかるなら、自分で書いた方が速い。 これは負けではなく正しい判断です。

中間もある

全部任せるか全部書くかの二択ではありません。よく効く形は次のとおりです。

プレーンテキスト

自分 関数の名前と引数と戻り値を決める、テストを書く AI 中身を埋める

境界の設計だけ自分でやると、任せられる範囲が一気に広がります。境界が決まっていれば、中身が気に入らなくても捨てて頼み直すのが簡単だからです。

演習

中間の形を実際にやります。判定の基準は自分で決め、実装だけを任せます。 カテゴリごとの合計から、支出が多い順に並べたリストを返す関数です。同点のときにどうするかは、あなたが決めて指示に書いてください。決めなければ AI が決めます。

完成条件

  • 触ってよいのは kakeibo.py だけです
  • 戻り値は [[カテゴリ名, 合計], ...] のリストのリストにしてください
  • 同じ金額のときの並び順まで指示に書いてください
  • rankCategories 関数の戻り値で採点します

依頼

kakeibo.py の rankCategories を、カテゴリ別の合計を金額が多い順に並べたリストを返す関数にしてください。いまは辞書をそのまま返しています。

  • ・触ってよいのは kakeibo.py だけです
  • ・戻り値は [[カテゴリ名, 合計], ...] のリストのリストにしてください
  • ・同じ金額のときの並び順まで指示に書いてください
  • ・rankCategories 関数の戻り値で採点します

いまのコード

kakeibo.py

def rankCategories(totals):
    """カテゴリ別の合計を並べ替える"""
    return totals

AI への指示

残り 4 回
AI に依頼するにはが必要です

ヒント