わかりやすく 関数 プログラミング とは
ラーメンを作るいくつもの手順に「ラーメンを作る」という名前をつけておけば、次からはその一言ですみます。関数とは、いくつもの仕事を一つのかたまりにまとめて名前をつけることです。名前を呼ぶだけで、その仕事が全部行われます。
まとめて名前をつける
お湯をわかす、めんを入れる、スープを入れる、器に盛る。
この四つの手順を「ラーメンを作る」という一つのかたまりにまとめ、名前をつけます。
このまとまりが関数です。
下では、ばらばらの手順が一つのかたまりにまとまる様子が見られます。
ばらばらの手順 → 名前のついた一つのかたまり。四つの手順が「ラーメンを作る」にまとまります。
まとめて名前をつけると、頭の中がすっきりします。
「お湯をわかして、めんを入れて……」と一つずつ言わなくても、「ラーメンを作る」の一言で通じます。
複雑なものを、名前一つの後ろに隠すわけです。
呼べば全部行われる
名前をつけておいたので、あとは名前を呼ぶだけです。
「ラーメンを作る」と言えば、中にまとめた四つの手順が順に全部行われます。
中をもう一度のぞく必要はなく、名前がその仕事を代わりに引き受けてくれます。
名前を呼ぶと、まとめた手順が順に実行されます。「ラーメンを作る」→ 四つの手順が一つずつ。
これが便利なのは、「どうやるか」を忘れてもかまわないからです。
名前と「何をするか」さえわかっていれば、中がどうなっていても呼ぶだけですみます。
複雑さを名前の後ろに隠しておくのです。
材料を入れて結果を受け取る
関数には材料を入れられます。
「2倍にする」という関数に5を入れると10が、7を入れると14が出てきます。
何かを入れると(入力)中で働き、結果を返してくれる(出力)ので、小さな機械のようなものです。
入力 → (関数) → 出力。2倍にする: 5 → 10。入れる値によって結果が変わります。
名前が同じでも、入れるものが違えば出てくるものも違います。
「2倍にする」に3を入れれば6、100を入れれば200です。
材料だけを変えて、同じ仕事をさせるわけです。
作った関数をもう一度使う
関数のいちばんいいところは、何度でも使えることです。
「2倍にする」を一度作っておけば、5にも8にも12にも、必要なたびに名前を呼ぶだけです。
一度作って、何度も使うのです。
一度作った「2倍にする」を何度も呼びます。5 → 10 · 8 → 16 · 12 → 24。
第7回の繰り返しも「一度書いて何度も」でした。
関数も似ていて、一度うまく作っておけば、プログラムのあちこちで何度も取り出して使えます。
よい関数が一つあれば、いつまでも手間を減らしてくれます。
複雑さを治める方法
関数は、複雑さを治める方法です。
いくつもの仕事をまとめ、名前をつけ、また取り出して使う。
大きなプログラムも、じつは関数どうしが呼び合いながら動いているのです。
まとめて名前がつけられたら、次へ。関数 = まとめて名前をつけて使い回す → データのまとまり · 大きなプログラム · その先。
ここまでよくがんばりました。
値に名前をつけ、種類を知り、判断し、計算し、繰り返し、そしてまとめて名前をつけるところまで来ました。
プログラムを組み立てる基本の道具を、ほとんど手にしたことになります。