プログラミングをしていると、どんな変数名を付けるのが良いか悩むことはないでしょうか。
特にプログラミング初心者の方は、「a」や「str」など、自分だけがわかるような変数名の付け方になっていないでしょうか。
僕は、ソースコードは文章と同じで、人に読んでもらうためのものと考えています。
変数名は文章を構成する1つの単語なので、できるだけ他人が分かりやすい付け方にすべきであると思っています。
本記事では、変数名をなるべく人に理解してもらえるためにどうしたらよいか、についてのコツを解説していきます。
僕自身も20年ほどプログラミングしてきて、いつも心がけている内容です。
1つでも共感出来るものがあれば、取り入れてもらえると幸いです。
プログラミングで良い変数名を付けるコツ
①変数のスコープは出来る限り小さくする
②変数の定義はできる限り使う直前にする
③よく使われる単語を用いる
④変数名が長い場合は略称(短縮語)を用いる
⑤アンダースコアや大文字・小文字の区別をお作法に従って付ける
⑥スコープが大きいものは長めの変数名、小さいものは短めの変数名にする
⑦配列やリストなどの複数を表す変数名は複数形にする
⑧プロジェクトで用いている単語を出来る限り使用する
以下、解説していきます。
①変数のスコープは出来る限り小さくする
変数名に関する直接的な話ではないですが、ソースコードの見やすさに関するコツとして、気をつけるべきことになります。
スコープというのは、その変数を使うことが出来る範囲のことですが、この範囲が大きくなるほど、変数の存在を長時間知っておく必要があるため、読み手にとって読みづらくなります。
言語により変数が定義できるところは異なりますが、クラス変数やグローバル変数を使うよりも、可能であれば関数やメソッド内でのみ有効なローカル変数として定義します。
②変数の定義はできる限り使う直前にする
こちらもソースコードを見やすくするためのコツです。
変数の定義を関数やメソッド内のどこに書いても問題ない場合は、出来る限りその変数を使う直前に定義します。
①と合わせて、ソースコードを読む人に、変数の存在を意識する期間をなるべく短くしてあげることで、分かりやすいソースコードにすることができます。
③よく使われる単語を用いる
変数名には、よく使われる単語がある程度決まっています。僕が個人的によくまとめられていると思うサイトを紹介しておきます。
ここで紹介されている単語は、どの言語でもよく使われる単語で、他のプログラマーもよく使う単語なので、共通の意味合いで使用することができます。
④変数名が長い場合は略称(短縮語)を用いる
1つの単語や複数の単語の組合せが長い場合は、略称(短縮語)を使います。
よく使われる略称は以下のサイトを使うと調べることができます。
⑤アンダースコアや大文字・小文字の区別をお作法に従って付ける
プログラミング言語によって、変数名の大文字・小文字の組合せ方やアンダースコアやハイフンを単語の区切りに入れたりというお作法があります。以下、簡単に紹介します。
名称 | 書き方 | 例 |
---|---|---|
アッパーキャメルケース | 単語の先頭を大文字にする書き方 | UserName |
ローワーキャメルケース | 変数名の先頭の単語を小文字とし、残り単語の先頭は大文字にする書き方 | userName |
スネークケース | 単語をアンダースコアで区切る書き方 | user_name |
チェインケース | 単語をハイフンで区切る書き方 | user-name |
また、関数(メソッド)のスコープがプライベート関数(メソッド)の場合である場合には、関数名の先頭にアンダースコアを付けるなどのお作法もあります。
その他、プロジェクトによってもルールが定められていたりします。
⑥スコープが大きいものは長めの変数名、小さいものは短めの変数名にする
変数のスコープが大きいものは、参照する回数も多くなりますし、他の変数と区別しやすくするために、概ね3~4つの単語を組合せて分かりやすい変数名にします。
一方で、変数のスコープが小さいものは、1~2つの単語で短さ重視にします。
⑦配列やリストなどの複数を表す変数名は複数形にする
変数が配列やリストなど、代入する値が複数となる場合には、変数名も複数とすることで、型が存在しないプログラミング言語でも配列やリストであることを区別することができます。
例えば1人のユーザを表す変数名であればuserとし、複数人を表す配列やリストであればusersとします。
⑧プロジェクトで用いている単語を出来る限り使用する
プロジェクトで扱っている業務や業界などにより固有の単語があります。
プロジェクト内に用語集がある場合は、できるだけその単語に合わせます。
また、先に作成されているチームメンバーのソースコードがあれば、その中で用いられている単語や変数名に合わせると、より読みやすくなります。
読み手に分かりやすい名前を付けることが重要
8つのコツを紹介しましたが、どれも共通して「読み手に分かりやすい名前を付ける」という点を重視しています。
ソースコードは他人に読んでもらうためのものということを意識して、良いプログラミングを心がけていきましょう。
参考になれば幸いです。
コメント