バイブコーディングの土台

Day 4関数と部品化

抽象化(中身を知らなくても使える)

抽象化は『中身を隠して、使い方だけ見せる』こと。リモコンにたとえ、AIに任せる範囲の考え方を学ぶ。

テレビの仕組みを知らなくても、テレビは見られる

あなたはテレビの内部回路を1つも知らなくても、リモコンのボタンを押せばチャンネルを変えられます。これが抽象化です。『中の複雑な仕組みを隠して、使うために必要なことだけ表に出す』という考え方です。

たとえるなら

抽象化はリモコンです。電源ボタン・音量ボタンという『使い方』だけが表にあり、電子回路という『中身』は箱の中に隠れている。あなたはボタン(使い方)さえ分かれば、中身を知らなくても目的を達成できます。

関数もまさにこれです。『税込み価格を計算する』という関数は、中でどんな計算をしているか知らなくても、名前と引数と戻り値さえ分かれば使えます。中身を隠して使い方だけ見せる。これが良い部品の条件です。

  • 表に出すもの: 名前・引数(渡すもの)・戻り値(返るもの)=使い方
  • 中に隠すもの: 具体的な計算手順=中身の仕組み

なぜ隠すと便利なのか

中身を隠すと、使う側は『使い方』だけ覚えればよくなります。さらに、中身を後から改良しても、使い方が同じなら他の場所を直さずに済む。リモコンのボタン配置が同じなら、テレビの中身が新型になっても操作は変わらないのと同じです。

中身まで全部見せる

使うたびに複雑な手順を意識させられる

TEXT
// 使うたびに税率や端数処理の計算式を全部書く
価格 * 1.1 の小数を切り捨て...

使い方だけ見せる

名前を呼ぶだけで済む

TEXT
税込み価格を計算する(価格)

AIに任せる範囲の考え方

バイブコーディング([[vibe-codin用語])は、まさにこの抽象化を最大限に使う作り方です。AIに『税込み価格を計算する関数を作って』と頼めば、中身の計算はAIが書いてくれます。あなたは中身の全行を暗記する必要はありません。

AIにはこう頼む

「この関数の使い方(引数と戻り値)を、中身を読まなくても分かるように一言で説明して」。使い方さえ言葉にできれば、その部品を安心して呼び出せます。

隠していい中身と、確認すべき境界

抽象化は強力ですが、『中身を一切見なくていい』という意味ではありません。任せるのは中の細かい手順まで。でも入口(引数)・出口(戻り値)・その関数が正しく動いているかは、必ず自分で確認する。ここが『任せる』と『丸投げ』の境界線です。使い方が分かる人だけが、正しく任せられます。

読んでも腑に落ちない所は、AIに噛み砕いてもらいましょう。

理解度チェック

答えられれば、面接で説明できる状態に一歩近づきます。

Q1

抽象化(リモコンのたとえ)が意味することとして、最も正しいのはどれ?

Q2

抽象化とは何かを説明し、AIに任せる作り方(バイブコーディング)とどう関係するか述べてください。

記述式です。まず自分の言葉で答えを考えてから、模範解答を開いて自己採点してください。