関数は、レシピの中の「いつもの下ごしらえ」
毎回書くと長くなる手順に、名前をつけてまとめておく。
プログラムが読みやすくなる、いちばん基本の整理術。
料理のレシピに「野菜を洗って皮をむき、一口大に切る」と毎回書いてあったら、くどいですよね。
実際のレシピ本は「下ごしらえをする」の一言で済ませます。
プログラミングの関数は、まさにこれです。
手順に名前をつける
考え方はこう
下ごしらえ = 「洗う → 皮をむく → 一口大に切る」
カレーを作る:
下ごしらえ(じゃがいも)
下ごしらえ(にんじん)
煮込む(20分)
よく使う手順のまとまりに名前をつけて、必要な場所で呼び出す。
これが関数のすべてです。
同じ処理を10か所に書き写さなくて済むし、手順を改良したいときも直すのは1か所でいい。
読み物としての効能
関数のもうひとつの効能は、プログラムが目次のように読めることです。
細かい手順が全部べた書きされた10ページより、「下ごしらえ→煮込む→盛り付け」と並んだ1ページのほうが、何をしているか一目で分かる。
プログラミングが上手い人のコードは、実は難しいことが書いてあるのではなく、名前のつけ方と切り分けが上手いだけだったりします。
料理上手の台所が片付いているのと、同じ理屈です。