Day 4・関数と部品化
関数とは(入力→処理→出力)
関数は「入れたら出てくる箱」。自動販売機や電子レンジにたとえて、入力・処理・出力の流れをつかむ。
関数って、結局なに?
プログラミングでいちばんよく出てくる部品が [[functioclienrequest です。むずかしそうな名前ですが、正体はとてもシンプル。「何かを入れると、何かが出てくる箱」だと思ってください。
たとえるなら
関数は自動販売機です。お金とボタン(入力)を入れると、中でゴトンと処理が動いて、ジュース(出力)が出てくる。あなたは中の仕組みを知らなくても、正しく入れれば欲しいものが返ってきます。
この「入力 → 処理 → 出力」の3ステップが関数の全てです。電子レンジも同じ。冷たいお弁当と時間(入力)を入れてスタートを押すと、中で温める処理が走り、あったかいお弁当(出力)が出てきます。
- 入力: 関数に渡すもの(お金、お弁当、材料)
- 処理: 関数の中で行われる仕事(温める、計算する)
- 出力: 関数から返ってくる結果(ジュース、あったかいお弁当)
関数「あいさつを作る」
入力: 名前
処理: 名前の前後に文をつける
出力: 「こんにちは、〇〇さん」という文
あいさつを作る("田中") -> "こんにちは、田中さん"なぜ関数を使うの?
同じ処理を毎回ゼロから書くのは大変だからです。一度「あいさつを作る」箱を用意すれば、名前を変えて何度でも呼び出せる。作業を「名前のついた1つのまとまり」にできるのが関数の価値です。
関数なし
同じ処理をあちこちに丸ごとコピペ
print("こんにちは、田中さん")
print("こんにちは、佐藤さん")
print("こんにちは、鈴木さん")関数あり
処理を箱にまとめて、名前で呼び出す
あいさつを作る("田中")
あいさつを作る("佐藤")
あいさつを作る("鈴木")Pythonでは def、TypeScriptでは function という書き方をしますが、文法が違うだけで「入力を受け取って出力を返す箱」という考え方はどの言語でも同じです。
AIにはこう頼む
「名前を受け取って『こんにちは、〇〇さん』という文字列を返す関数を作って。関数名は分かりやすくして」。入力と出力を言葉で先に決めてから頼むと、AIも迷わず作れます。
丸投げの落とし穴
関数の中身を読まずにAI任せにすると、「入力と出力が自分の思ってたのと違う」ことに後から気づけません。中の仕組みは分からなくても、『何を入れたら何が返るか』だけは必ず自分の言葉で確認しましょう。
読んでも腑に落ちない所は、AIに噛み砕いてもらいましょう。
理解度チェック
答えられれば、面接で説明できる状態に一歩近づきます。
関数を自動販売機にたとえたとき、「出力」にあたるのはどれ?
関数とは何かを、身近なものにたとえて説明してください。
記述式です。まず自分の言葉で答えを考えてから、模範解答を開いて自己採点してください。