【情報I】関数はなぜ使うの?現役エンジニアが「面倒を減らす仕組み」として解説
こんにちは!オンライン家庭教師のこばやしです。普段はフリーランスのITエンジニアとして働きながら、中高生に「情報I」「理系数学」「英語」を教えています。
プログラミングの「関数」について、「作り方は分かるけれど、わざわざ使う意味やメリットが分からない」という声をよく聞きます。数学の関数ともイメージが違って、余計にモヤモヤする方も多いのではないでしょうか。
メリットが見えない原因は、まだ短いプログラムしか書いていないからです。関数の本当のありがたみは、プログラムが"大きく"なったときに効いてきます。
■ 関数は「処理に名前をつけて使い回す」道具
関数とは、ひとことで言えば「よく使う処理に名前をつけて、何度でも呼び出せるようにする」道具です。
たとえば「消費税を計算する」という処理。これに「税込計算」という名前をつけておけば、必要なときに名前を呼ぶだけで何度でも使えます。同じ計算を毎回いちから書かなくて済むのです。
■ 引数と戻り値は、"入口"と"出口"
関数を理解する鍵は、「引数(ひきすう)」と「戻り値」です。難しそうな言葉ですが、要は"入口"と"出口"のこと。
自動販売機を思い浮かべてください。お金と商品ボタン(入口=引数)を入れると、ジュース(出口=戻り値)が出てきます。関数も同じで、材料を入れると結果が返ってくる。この「入れたら出てくる」イメージを持つと、一気に分かりやすくなります。
■ なぜ使う?=ラク・ミスが減る・読みやすい
関数を使うメリットは、大きく3つあります。
一つ目はラクになること。同じコードを何度も書かずに済みます。二つ目はミスが減ること。修正するときも、関数一箇所を直せば全部に反映されます。三つ目は読みやすくなること。「税込計算」と名前がついていれば、何をしているか一目で分かります。
短いプログラムでは実感しにくいですが、規模が大きくなるほど、この差は決定的になります。
■ 現場では、巨大なコードを関数で整理している
私が携わってきたシステムは、数万行にもなる巨大なプログラムでした。もし関数がなければ、とても人間が管理できるものではありません。
現場では、大きな処理を「部品(関数)」に分けて整理します。一つひとつの関数は小さくシンプルに保ち、それらを組み合わせて大きなシステムを作る。関数は、複雑さと戦うためのプロの必須道具なのです。
■ 「まとめて名前をつける」力は、あらゆる場面で役立つ
共通するものを見つけて、まとめて名前をつける。この考え方は、プログラミングだけのものではありません。文章の要約や、物事の整理、勉強のまとめ方にも通じる、とても汎用的な力です。
私の授業では、同じ処理を2回書いた瞬間に「これ、関数にできるね」と気づいてもらいます。実際に手を動かして"ありがたみ"を体感すると、関数はぐっと身近になります。
・「関数を使う意味が分からない」という方
・「引数・戻り値でつまずいている」という方
・「ごちゃごちゃしたコードを整理したい」という方
そんな方は、ぜひ一度体験授業にいらしてください。現役エンジニアと一緒に、関数の"ありがたみ"を体感しましょう!
【プロフィール】
こばやし|納得感を大切にするフリーランスエンジニア
北海道大卒。約10年間にわたり金融決済システムなどの基幹開発に携わった後、フリーランスのエンジニア・IT講師として独立。企業の新人IT研修のメイン講師も務めるプロが、「仕組みから理解する」論理的な指導を行います。
この先生のおすすめコース
- 共通テストで「情報I」が必要な国公立大・難関私大志望の方
- 「プログラミング」や「データの分析」が苦手で、暗記に逃げている方
- 将来IT系に進みたい、または現役エンジニアから実学を学びたい方
このブログに関連するオンライン家庭教師はこちら
情報/プログラミングのおすすめの指導コース
- AI・機械学習に興味はあるけど難しそうで不安な生徒様・親御様
- オンラインでAIを学びたい生徒様・親御様
- 将来AI関係の学問・仕事に関わりたい生徒様・親御様
- 共通テストに向けた対策・最後の確認をしたい方
- プログラミング関係に不安がある生徒様
- 共通テスト対策をしっかりしたい生徒様
- 情報系、プログラミングが好きだけど苦手意識がある生徒さん
- 情報系、プログラミングが苦手な不登校も含む生徒さん、社会人
- 共通試験で情報、私大入試で情報を取る生徒さん
- 情報の授業についていけず、何がわからないかも曖昧な方
- 定期テストで平均点を超えたい、情報を得意にしたい方
- 一緒に考えてくれて、丁寧に教えてくれる先生を探している方
- 情報Ⅰに苦手意識がある
- 効率重視で点数を伸ばしたい
- 苦手を的確に指摘・言語化し、短期間で伸ばしてくれる先生