C#の変数名の付け方とは?初心者でもわかる命名規則と注意点
生徒
「C#で変数ってよく出てくるけど、名前の付け方って決まりがあるんですか?」
先生
「はい、実は変数名にはわかりやすくするためのルールや命名規則があるんです。特に初心者は、それを守ることでエラーを防いだり、他の人にも読みやすくなりますよ。」
生徒
「なるほど、どんなふうに名前を付ければいいのか教えてください!」
先生
「では、C#での変数名の付け方を基本から詳しく解説していきましょう!」
1. 変数とは?
変数(へんすう)とは、プログラムの中で「値(あたい)」を入れておく“入れ物”のようなものです。たとえば、名前や年齢などの情報を一時的に保管しておくために使います。
現実の例で言えば、「ラベルを貼った箱」と考えてみましょう。箱には「りんご」や「みかん」などの中身が入っていて、ラベルには「fruits」や「fruitName」などの名前が書かれています。これが変数と変数名のイメージです。
2. C#での変数名の基本ルール
C#で変数名をつけるときには、以下の基本ルールを守りましょう。これらを守らないとエラーが出ることがあります。
- 英数字(A~Z、a~z、0~9)とアンダースコア(_)のみ使える
- 数字から始めてはいけない
- 記号(@, #, $, %, など)は使えない
- スペースは使えない
- 予約語(int, class, publicなど)は使えない
例えば、次のような変数名はエラーになります:
int 1name; // 数字から始まっているのでエラー
int my name; // スペースがあるのでエラー
int public; // C#の予約語なのでエラー
3. 読みやすくエラーの起きにくい命名規則(キャメルケース)
プログラミングでは、ただエラーが出ないだけでなく「わかりやすく」書くこともとても大切です。そのために、キャメルケース(camelCase)という書き方を使います。
キャメルケースとは、単語の最初の文字を小文字にし、2つ目以降の単語の頭文字を大文字にする方法です。
たとえば:
- userName(ユーザー名)
- totalPrice(合計金額)
- isLogin(ログインしているかどうか)
これらは一目で意味がわかる変数名で、他の人が見ても読みやすいです。
4. わかりやすい名前をつけるコツ
変数名をつけるときは、できるだけ意味がわかる名前を使いましょう。
以下にわかりやすさの違いを比較してみましょう。
// わかりにくい変数名
int a = 10;
int b = 20;
// わかりやすい変数名
int appleCount = 10;
int orangeCount = 20;
appleCount や orangeCount のように、「何を表しているか」がはっきりしていると読みやすくなります。
5. よく使われるプレフィックス(接頭辞)
変数名の先頭に、どんな種類のデータかを表す「プレフィックス(prefix)」をつけると、さらにわかりやすくなります。ただし、C#ではこの書き方は必須ではありませんが、初心者には便利です。
- str: 文字列(string型) 例:
strName
- int: 数字(int型) 例:
intAge
- bool: 真偽(boolean型) 例:
boolIsLogin
ただし、C#の公式なスタイルでは「型名を入れないシンプルな名前」が推奨されています。どちらを使うかはプロジェクトやチームの方針に合わせましょう。
6. 変数名に使ってはいけない例
次のような変数名は避けましょう。初心者がよくやりがちなミスです。
- 意味のない名前:
x
,y
,tmp
など - 長すぎる名前:
userNameOfCustomerInShoppingMall2024
- 日本語の変数名: 一応使えますが、英語で書くのが一般的です
バランスよく、簡潔で意味が伝わる英語を使うのがベストです。
7. 実際に変数を使ってみよう
では、C#で変数を実際に宣言し、値を代入して表示してみましょう。
string userName = "たろう";
int userAge = 20;
Console.WriteLine("名前は " + userName + " です。");
Console.WriteLine("年齢は " + userAge + " 歳です。");
実行結果:
名前は たろう です。
年齢は 20 歳です。
8. よくある質問と注意点
Q1: 大文字と小文字は区別されますか?
→ はい、C#では大文字と小文字が区別されます。userName
とUserName
は別の変数として扱われます。
Q2: アンダースコア(_)は使っていいですか?
→ 使えますが、C#の一般的なスタイルではキャメルケースが推奨されています。
Q3: 変数名に日本語は使えますか?
→ 技術的には可能ですが、実務では英語が一般的です。