C#コーディングルール

C#コーディングルール_#04_パスカルケースとキャメルケース

それでは具体的な名前の付け方を見ていきたいと思います。

名前は英語で付ける

とりあえず,C#では名前はすべて「英語」で付けます。昔はローマ字で書いている時代もありましたが,現状はすべて英語です。だから「商品」という名前は「Product」という英語を使います。ローマ字でShouhinとかでは付けないようにしましょう。

英語にするにはインターネットのGoogle翻訳を使ってもいいですが,複数候補がある場合は,一番誰にでも理解しやすい英単語を使いましょう。この単語の選び方も,チーム内である程度決めたほうがいいです。「顧客」を「Customer」とするのか「Client」とするのか等は,チームで決定すればよいことですが,プログラマーごとに異なると,統一されていないプログラムコードになり,保守性が下がります。

データベースの列名を付けるときにある程度の項目が選出されると思うので,その段階で,仕様で出現する単語をどう訳すかは,ドキュメント等に定義してしまって,迷ったときはそれを見る等の対応をするのもよい運用です。

1単語ごとの頭文字を大文字にする

名前を英語にしたときに2つ以上の単語で1つの名前にする場合は,単語の頭文字を大文字にします。例えば「ユーザー名」という名前を英語にすると「user name」という2つの単語になります。そこに「単語の頭文字を大文字にする」というルールを適応すると「UserName」という名前になります。英語にしたときに1つの単語ではなく,スペースで区切られるような場合は,単語単位で頭文字を大文字にします。

1単語になっている場合は途中での大文字はなし

一方,1つの単語の場合は単語の最初の文字は大文字にしますが,途中の文字はすべて小文字になります。「名前空間」という名前は「namespace」という1つの単語の為,「Namespace」となります。「NameSpace」とならないことに注意してください。

Pascal(パスカル)

C#で名前を付ける際は「Pascal」と「Camel」に分かれます。基本的にどちらかで名前を付けると思っておいてください。C#の命名ではほとんどがPascal標記になります。

「Pascal」とは名前の最初の文字を大文字にする書き方を言います。先ほどの例でいうと「user name」という名前を付ける場合は「UserName」というように,最初の文字を大文字にします。「Pascal」といわずに「アッパーキャメル」という呼び方をする場合もあります。

Camel(キャメル)

「Camel(キャメル)」とは,名前の頭文字を小文字にする書き方です。
先ほどの例の「user name」の場合は「userName」となります。

「namespace」の場合は「namespace」となります。Pascalの頭文字を小文字にするという書き方です。C#では主にprivateのフィールド(変数)に対してCamel(キャメル)を適応します。ローワーキャメルと呼ぶ場合もあります。頭文字大文字がアッパーキャメル,小文字がローワーキャメルと呼ぶほうが覚えやすくていいかもしれません。

基本的にC#はこのローワーキャメルかアッパーキャメルで表現します。次回以降はどういった場合にローワーキャメルやアッパーキャメルになるのかという事に関して解説していきます。

C#コーディングルール

■4700人以上が受講している動画コースはこちらからご確認ください

#01_はじめに
#02_名前の付け方
#03_名前付けのガイドライン
#04_パスカルケースとキャメルケース
#05_パスカルとキャメルの内訳
#06_パスカルとキャメルの実演
#07_2文字の略語は大文字にする
#08_名前空間のガイドライン
#09_ローカルルールについて
#10_private変数にアンダーバーを付ける
#11_コントロールの名付け
#12_クラス名とファイル名の名づけ
#13_StyleCopAnalyzersについて
#14_StyleCopAnalyzersのインストール
#15_ネームスペースの調整
#16_SA0001_プロパティのビルドのXMLでファイルを指定しておくと消える
#17_CS1591_XMLコメントなし
#18_SA1101_thisが付いていない
#19_不要なルールを非表示にする方法
#20_SA1200_usingの場所
#21_SA1400_アクセス修飾子が明示的に定義されていない
#22_その他不要なルールを非表示
#23_コンストラクタとデストラクタを作成
#24_Private変数とパラメータ変数の命名
#25_中括弧の省略禁止と改行
#26_コメントはスラッシュ4つ
#27_プロパティのXMLコメント
#28_コンストラクタやプロパティの書く順番
#29_アクセスレベルを加味した書く順番
#30_インタフェースのIとファイル名の不一致
#31_最後に

■4700人以上が受講している動画コースはこちらからご確認ください