プログラムを書くときに、大事なのが変数やメソッドの名前付けです。
難しいプログラムを書いているときなど、変数名を適当につけてしまうこともあります。
そんな名前付けについての大切さについて説明します。
なぜ適当に名前をつけたらいけないのか
プログラムは、一度作って終わりではありません。
一度限りの使い捨てのようなプログラムもあるでしょうが、修正や拡張をすることがつきものです。
プログラムを修正するためには、既にあるプログラムについて何をしているのかわかる必要があります。
わかりにくいプログラムは理解するのが大変で、修正に時間がかかったり、修正がうまくできなかったりします。
それに比べて、わかりやすいプログラムは理解するのが簡単で、修正箇所の特定が早くなります。
文章を読むときも、難しくかかれたものよりも、簡単な文章で書かれたもののほうがいいです。
プログラムもわかりやすいように書くのが大事です。
その第一歩が、『わかりやすい名前』を付けることです。
わかりにくい名前
以下のプログラムを見て、何をしているかわかるでしょうか?
Sub s()
Dim a As Long: a = Range("A2").Value
Dim b As Long: b = Range("B2").Value
Dim c As Long: c = a * b
Range("C2").Value = c
End Sub
「A2」セルと「B2」セルを掛けたものを「C2」に入力しているようです。
プログラムからわかるのはそれくらいでしょうか。
エクセルのシートを確認して初めて金額を計算しているということがわかります。
わかりやすい名前
以下のプログラムを見てください。変数名が以下の英語にかわっています。
- unitPrice:単価
- quantity:数量
- price:金額
これを見れば、単価と数量を計算して金額を「C2」セルに入力しているのがわかります。
Sub calcPrice()
Dim unitPrice As Long: unitPrice = Range("A2").Value
Dim quantity As Long: quantity = Range("B2").Value
Dim price As Long: price = unitPrice * quantity
Range("C2").Value = price
End Sub
また、プロシージャ名が「clacPrice」となっているので、プロシージャの中のプログラムを見る前に、金額の計算をするものであることもわかります。
まとめ
変数名に「a」などの名前を付けてしまいがちですが、それは読みにくいプログラムの始まりです。
上にあげた金額を計算するような簡単なプログラムでも、名前の付け方だけで読みやすさがぜんぜん違います。
エクセルでは、変数名などに日本語が使えるので、わかりにくい名前を付けるくらいなら日本語で命名しましょう。