プログラミングの関数を使うメリットや書き方・使い方を図解し解説 2

プログラミング基本構文

プログラミングの関数を使うメリットや書き方・使い方を図解し解説

2020年8月6日

 

プログラミングに出てくる関数の意味がよくわかりません。

関数を使うと何かいいことはあるの?

実際どうやって使えばいいか、具体例なども交えわかりやすく教えて欲しい。

 

本記事の内容

  • 関数とは?
  • 関数を使うメリット
  • 関数の書き方や使い方

 

プログラミングで「関数」を理解できるようになると、誰でも見やすく、品質の高いソースコードになります。

 

とはいえ「関数」と聞いて、ちょっと難しそうだなと思ってしまいますよね。

大丈夫です。

 

この記事では「関数」について具体例を挙げつつ図解しながら、初心者にやさしく解説していきます。

 

1.関数とは?

1.関数とは?

 

まず、プログラミングで使う「関数」の前提知識をここで解説します。

 

プログラミングの「関数」とは一言でいうと、

一連の処理をひとまとめにし、「関数名」を指定するだけで結果が得られるようにした命令のこと。

 

このように捉えておいてください(図解)。

関数とは図解

 

例えていうなら「銀行ATM」を使ってお金を下ろすことが、ちょうど「関数」を使うことに似ています。

ちょっとここで、銀行ATMでお金を下ろすことを考えてみましょう。

 

「銀行ATM」を使ってお金を下ろす ≒ 「関数」を使う

「銀行ATM」を使ってお金を下ろす ≒ 「関数」を使う

 

銀行ATMでお金を下ろす際には、まず以下のような手続きを行いますよね。

  • カードを入れる
  • 暗証番号を入れる
  • 引き出す金額を指定する

 

そのあと銀行ATM内では以下のような様々な処理が行われます。

  • カード情報を読み込む
  • 誰の口座か特定する
  • 口座残金チェック
  • 口座残高から引き出す金額を差し引く...

 

上記の銀行ATM内で行われる処理が、お金を引き出すための「一連の処理をひとまとめ」にしたものです(下図)。

お金を引き出すための「一連の処理をひとまとめ」図解

 

そして最後に現金が出てきます。

 

マー坊

現金を得るために「銀行ATM」という関数を使うイメージですね。

 

「関数」は2種類ある

「関数」は2種類ある

 

下記のとおり「関数」は2種類あります。

  • 標準関数
  • ユーザー定義関数

 

「標準関数」とはプログラム言語に既に用意されている(組み込まれている)「関数」のこと。

例えば、round()という数値を四捨五入する関数はPHPなどに組み込まれています。

 

一方、「ユーザ定義関数」は、「標準関数」にない機能を自分で作るオリジナル関数のことです。

 

マー坊

記事後半で、「ユーザ定義関数」の書き方や「関数」の使い方について解説しますね。

 

2.関数を使うメリット

2.関数を使うメリット

 

それでは、「関数」を使うメリットについて解説していきます。

  1. 使いたい機能が簡単に使える(開発者にとって便利)
  2. 同じ処理を何度も記述する必要がない(可読性や保守性が向上)

 

順番に解説します

 

1.使いたい機能が簡単に使える

1.使いたい機能が簡単に使える

 

プログラマーにとって「関数」があることは非常に便利です。

必要な情報を「関数」に渡してあげるだけで、得たい情報がすぐに手に入ります。

必要な情報を「関数」に渡してあげるだけで、得たい情報がすぐに手に入ります

 

複雑な内部処理は意識しなくていい

普段僕たちは「銀行ATM」を使う時、ATMの内部処理なんて意識しませんよね。

「カードと暗証番号、引き出し金額だけATMに入力することで現金が出てくる」

ということだけ知っているはずです。

銀行ATMを関数に見立てる

 

プログラマーも同じように「関数」がやってくれること(目的)さえ知っておけばいいだけ。

「関数」内の様々な処理は意識しなくても、簡単に結果を得ることができるんです。

複雑な内部処理は意識しなくていい図解

 

2.同じ処理を何度も記述する必要がない(可読性や保守性が向上)

2.同じ処理を何度も記述する必要がない(可読性や保守性が向上)

 

プログラムを書く時、同じような機能を使いたいことって多いです。

しかし、そのたびに同じ処理を記述することは、コードが長くなりデメリットとなります。

  • ソースコードが読みづらい
  • バグが混入しやすくなるなど

 

可読性や保守性が向上

「銀行ATM」の内部で行われている様々な処理を、銀行窓口でやっていると窓口の担当者はかなりの労力ですよね。

銀行が忙しくなる

 

マー坊

お客さんが来るたびに、口座チェックなどやって現金を引き出さないといけません。

また、作業中にミスをしてしまう可能性もあります。

 

しかし、現金引き落としの一連の処理を「銀行ATM」にまとめておくことで、担当者の労力やミスはかなり軽減されます。

 

プログラムにも同じようなことが言えて、「関数」にしておくことで無駄な作業も減るし、コードミスも防ぐことができます。

関数にしておくと手間が省ける図解1

関数にしておくと手間が省ける図解2

 

3.関数の書き方(定義)・使い方(呼び出し)

3.関数の書き方(定義)・使い方(呼び出し)

 

では実際に「関数」の書き方(定義)や使い方(呼び出し)を解説していきます。

マー坊

プログラムで「関数」を書くことを「定義する」と言い、使うことを「呼び出す」と言います。

以降、このように言い回していきます。

  1. 関数を定義する方法(書き方)
  2. 関数を呼び出す方法(使い方)

 

1.関数を定義する方法|ユーザー定義関数

1.関数を定義する方法|ユーザー定義関数

 

「関数」の定義の仕方は以下の通りです。

function 関数名(引数) {

処理...

...

return 戻り値

}

 

まず、「function」というキーワードがあります。

「function」はオリジナル関数であることを宣言するもので、「ユーザー定義関数」であることを示します。

「ユーザー定義関数」を書く上でお決まりだと思ってください。

 

「function」に続けて「関数名」を書き、()内に引数、{}内に処理を記述します。

また、関数が何らかの値を返すのであれば、returnのあとに戻り値(変数や値など)を記述します。

 

マー坊

ユーザ定義関数は「function」「引数」と「戻り値」がポイント!

 

これから「引数」と、returnのあとに記述する「戻り値」について解説していきます。

 

具体例として「ドルを円に換算する関数」を使って解説していきます。

まずは「ドルを円に換算する関数」の仕様を見ていきましょう。

 

例)ドルを円に換算する関数

ドル円換算関数

 

以下、ドルを円に換算するユーザ定義関数です。

 PHP
function DollarYenConversion($doll, $rate) {
$yen = $doll * $rate;
return $yen;
}

 

関数の仕様は以下の通り

説明
関数名 DollarYenConversion ドルを円に換算する関数
引数 doll ドル
rate レート
戻り値 yen 換算後の円
機能 入力されたドルを円に換算する

 

引数

引数

function 関数名(引数) {

処理...

...

return 戻り値

}

 

「引数」とは関数内の処理で必要となるデータ(値)のことです。

 

「ドルを円に換算する関数」ではdoll(ドル)とrate(レート)が引数となります。

 PHP
function DollarYenConversion($doll, $rate) {
$yen = $doll * $rate;
return $yen;
}

 

戻り値

戻り値

 

function 関数名(引数) {

処理...

...

return 戻り値

}

 

戻り値とは、関数内で処理された結果のことです。

「return」のあとに結果を記述するだけです。

実際には、処理した結果を変数などに入れて記述します。

 

「ドルを円に換算する関数」では、ドルとレートをもとに円に換算された値(yen)が戻り値となります。

 PHP
function DollarYenConversion($doll, $rate) {
$yen = $doll * $rate;
return $yen;
}

 

では「関数」の呼び出し方について解説してきます。

 

2.「関数」を呼び出す方法(使い方)

2.「関数」を呼び出す方法(使い方)

 

関数の呼び出し方は以下のとおりです。

関数名 (引数)

 

実際の呼び出し方は次のようになります。

 PHP
//ユーザ定義関数
function DollarYenConversion($doll, $rate) {
$yen = doll * rate;
return $yen;
}
//関数呼び出し
$yen = DollarYenConversion(10, 105);
echo $yen;

 

10ドルを円に換算しています。

 

実行結果

1050

 

まとめ

最後に要点をまとめます。

 

「関数」とは「銀行ATM」と似ていて、一連の処理をひとまとめにした命令のこと。

繰り返し使う機能を「関数」にすることで、コード量が減り「保守性」「可読性」が向上します。

「関数」がやってくれること(目的)さえ知っておけば、「関数」の処理内部は意識せずに簡単に使えます。

 

「関数」の定義の仕方は以下の通りです。

function 関数名(引数) {

処理...

...

return 戻り値

}

 

関数の呼び出し方は以下のとおり。

関数名 (引数)

 

「関数」を理解しておくことで、誰もが見やすく、品質の高いソースコードに仕上がりますよ。

 

 

この記事はいかがでしたでしょうか✨?

-プログラミング基本構文

© 2020 お仕事講座-マー坊ブログ