どうも備忘録職人です。
今回は変数名をテーマにしたいと思います。
僕自身区別もついていないければ、適切に名前を付けられていない自覚があるので記事にしました。
タグにはC#がついていますが、どの言語も共通で使用されていたり、一般的な記法があったりするため、覚えてたいところです。
ということでいきましょうか!
変数名の命名ルール
変数名の命名時には大前提として以下のルールを守る必要があります。
これさえ守れればどんな名前を付けてもOK(変数の中身はどんなものなのか分かりやすければ尚良し)
使える文字
- aからzの小文字、AからZの大文字
- 0から9の数字
- アンダースコア(_)
守るべきルール
- 日本語の文字は使わない
- 数字は変数名の先頭の文字には使えない
- キーワード(予約語)や参照可能なメソッド名、クラス名は使えない(変数名の一部に使うことはできる)
では、以上のルールを守った上で、「記法」というものをご紹介します。
変数名の命名方式
記法というものはいくつか種類があり、使う用途や言語によって命名方式が違うようです。
C#での一般的な記法もあるので、まずは記法の種類をリストにしてご紹介します。
命名方式 | 例 |
---|---|
ハンガリアン記法 | intNumber |
キャメルケース | outputText |
スネークケース | output_text |
パスカル記法 | UserName |
大文字方式 | USERNAME |
では続いてそれぞれの命名方式についての内容をお伝えします。
ハンガリアン記法
最初の3文字に接頭辞(プレフィックスと呼ばれるもの)をくっつけてから変数名を付けるパターンですね。
この接頭辞(プレフィックス)ですが、意味としては「わかりやすくするための情報」と覚えておけば良いかと思います。
リストの例だとintNumberですが、int型のintNumberという変数だよという感じでわかりやすいのではないかと…
キャメルケース
別名:ローワーキャメルケース
複数の単語を繋げて、先頭の単語は小文字、それ以降の単語の頭文字を大文字とする記法です。
適切な変数名かどうかはさておき、例を挙げるとするならば「lowerCamelCase」という感じですね。
キャメルは日本語でラクダを意味するのですが、それぞれの頭文字が大文字になっているため、ラクダのように見えますね。
この記法はC#で一般的な記法の一つとされています。
スネークケース
単語と単語の間をアンダーバー(_)でつなげる記法です。
アンダーバーで単語がつながっているため、スペースが入っているように見えて読みやすいなと感じます。
こちらもC#では一般的な記法とされています。
パスカル記法
別名:アッパーキャメルケース
先ほどのローワーキャメルケースとは違い、複数の単語を繋げて全ての単語の頭文字を大文字とする記法です。
例:UpperCamelCase
C#では変数名よりもクラス名の命名時に一般的に使用されます。
大文字方式
単語の全ての文字を大文字とする記法です。
この記法は定数(プログラミング用語としては「ていすう」と読みます)の命名時に使われます。
定数とはいついかなるときも病める時も値を変えないもののことです。(対する変数は値が目まぐるしく変わったりします)
税率とかってなかなか変わらないので、そういうものを定数として扱います。
定数の大文字方式での記法は、割とどの言語でもあるイメージです。
最後に
そんなわけで今回は記法についてご紹介しましたが、もしかしたら企業さんによってはちょっと違うかもしれないです。
同じC#を扱っていても、「弊社はこの記法を使っている!」なんてこともあるかも?
もしかしたらリストに挙げた記法ではないかもしれません。
そんな時は柔軟に対応しましょう。
また、言語によっても記法が違います。
そんな時も柔軟に対応しましょう。
まぁ個人開発が主ならそこまで気にしなくていいのかなと思いますが、覚えておいて損はないかと思います。
チームとして参画された時に重宝しますし。
とは言いましたが、僕は独学なのでその辺は知りません話笑
僕の勝手な推測です笑
ばいばい!