-
Notifications
You must be signed in to change notification settings - Fork 0
なぜ定数を使うのか
定数とは、値を変更することができない変数のことです
Swift では let
で定数を宣言することができます
以下のような挙動ですね
var num1 = 0 // 変数宣言
num1 = 1 // OK
let num2 = 0 // 定数宣言
num2 = 1 // ERROR!
さて、わざわざ値が変えられない定数を使う意味は何でしょうか?
変数だけでいいような気がしますが...
とにかく実践してみましょう。
あなたは、「電卓アプリ」を実装するお手伝いをしているとします。
その電卓アプリのコードを見せてもらいました。
let tax = 0.1 // 消費税率
var num1: Int
var num2: Int
// ここから計算処理
// ~~~~~
たった最初の三行しか見せてもらえませんでしたが、これだけでこの計算アプリの仕様が一部わかります。
なにかわかりますか?
それは、このアプリは消費税率 (tax) が 10% で固定という仕様です。
税率が定数宣言されているので、この後いくらコードが長く書かれていようが、確実に tax
には 0.1
が入っていると保証されているわけです。
さて、仕様書を見てみると案の定でした。
仕様書
消費税率は 10% 固定で!
では逆にこの仕様にもかかわらず定数を使わなかった場合どうなるでしょうか?
var tax = 0.1 // 消費税率
var num1: Int
var num2: Int
// ここから計算処理
// ~~~~~
ふむ。まああまり問題ないような気もします。
しかしよく考えてみると、計算処理内で tax
の値が変更されていても誰も気づくことができません。
そんなミスするわけない?でも言い切れませんよね?
あなた自身は絶対ミスしないかもしれませんが、仮に誰かがこのコードをいじった時バグが起きたら、「誰か tax
いじった?」とか聞いて回ることになるかも...?
定数宣言しておけば、これが変ったことによるバグは絶対に無いと言い切れるようになるんです。
少なからず意識する必要があった「tax
は変えてはいけない」という考えを捨て去って、何も考えずコーディングできるようになるんです!
定数宣言しておけば、以下のようなメリットがあります
- 変わらないということから、使われ方の予想が出来る
- 変えてはいけない値を何も考えなくても変えずに済む
変えたくない値、または変える必要のない値にどんどん使っていきましょう!