フルスタックエンジニアのノウハウ
2021.04.18    2022.06.11

定数とは?

この記事の動画版はこちら(画像クリックでYoutubeに飛びます)

チャンネル登録お願いします!


定数とは?


結論から先に言うと


定数というのは、「内容を後から書き換えることができない変数」のことです。


変数というのは、プログラミングをする時に使う「データを入れておく箱」のようなものでしたね。


変数を使うことで、プログラミングをより便利に行うことができます。


例えば、ネットショップのアプリなどで、このような金額計算のプログラムがあったとします。



商品代金「100円」に、買った数量「5」を掛け算して、合計購入金額を計算するプログラムです。


これをこのままプログラムに書いてしまうと、何度動かしても「100 × 5」の計算しかできないプログラムになってしまいますが



このように単価や数量の各数値を「変数」として定義しておくと、それぞれの箱に好きな数値を入れるだけで、どんな計算もできるプログラムになります。



例えば、単価120円の商品を3個買ったなら



こんな風に、計算プログラムは1つ書いておくだけで、箱の中に好きな数字を入れれば、どんな商品・数量でも計算できるようになります。


では、これに「消費税の計算」も行うようにした場合はどうでしょう?


計算式はこんな感じになりますね。



ただ、消費税の税率(10%)は、処理する度に変わるものではなく、毎回固定です。


これを、単価や数量と同じように変数で定義してしまうと、誤ってプログラムの中で変数の値が書き換えられてしまい、思わぬバグを生んでしまうかもしれません。



では、変数を使わずに直接「1.1」と書いておけば良いかと言うと、金額計算はソースコードの色々な箇所にある可能性があるので、その全ての箇所に1.1と直接書いていては、もし将来税率が変わった場合にソースコードの修正が大変です。


こういった場合に使うのが「定数」です。


定数は一度設定したデータを後から書き換えることが出来ないため、税率を定数として定義しておけば、プログラム内で書き換えられることがなく安全です。



しかも、定数として1箇所で定義されているので、もし税率が変わった場合も、ここを書き換えるだけで修正が完了します。


こういった、色々な場所で使われる値だけど、プログラム内で変更してほしくないような「固定値」には、定数を使うようにしましょう。



定数の使い方


PHPでは、定数はこのように定義します。



このように定義しておくと、プログラムの中ではTAX_RATEと記述するだけで、1.1という値が呼び出せます。



変数のように頭に$を付ける必要はありません。


また定数の名前は、それが定数だということが分かりやすいように、全て大文字で名前を付けるのが一般的なので覚えておきましょう!



定数の活用例


実際のWebアプリ開発では、先ほど挙げたような計算の固定値の他にも、例えば、データベースの接続情報、会社名やコピーライトなどのページの固定表記文字列、サービスの管理者のメールアドレスや、WebAPIの認証キーなど、色々なソースコードから参照されるものの、内容が変更されない固定値は定数として定義します。


このように、別途「定数用のファイル」を作って、そこにまとめて定義することが多いですね。




まとめ




・変数は、内容を何度も書き換えることができる箱

・定数は、最初に入れた内容を後から書き換えることができない箱

・定数は、プログラム内で後から書き換えられると困るような固定値に使う



おすすめ記事