C#プログラミング言語での変数の命名規則[終了]


10

変数に関するC#のビデオを見ています。著者はメソッド内で変数を宣言し、次のように名前を付けました。string MyName = "James";

私の質問は、.Net Frameworkが推奨する規則です。上記の例のようなパスカルケースですか、それともキャメルケースですか?


あなたが知らなかったのであなたのせいではないこの質問の問題は、実際にはC#には標準的な規則がないということです。一般的な規則があります。残念ながら複数ありますが、純粋な意見以外の答えをここで得るのは非常に困難です。申し訳ありませんが、閉じるように投票しています。私の提案:時間をかけて人気のあるgithubとcodeplexリポジトリーでコードを読んで、人気のあるもののほとんどを書く人が業界経験者であり、あなたが見つけた一般的なものと同じように彼らが使用している規約を確認してください。
ジミーホファ2013


1
@Yusubovこれらは、ローカル変数ではなく、ライブラリのパブリック部分の命名について説明します。
スビック2013

回答:


26

「公式の」大会のようなものはないと思います。私の知る限り、経験豊富なC#開発者の多くは、次のことを推奨しています。

PascalCase for public member variables (string MyName = "James")

camelCase for local variables (string myName = "James")

_leadingUnderscore for private member variables (string _myName = "James")

このアプローチでは、最初の文字のケースによって、ローカル変数とパブリックおよびプライベートメンバーを区別できます。

他のコーディング規約と同様に、これも個人の好みの影響を受けます。したがって、明確な答えはありません。一般的な目標は、コードをできるだけ読みやすく、わかりやすくすることです。


3
+1これは私が見たスタイルに近いものです。それは一般に、MSDNの例で使用されているスタイルから取られていると思います。通常PascalCase、プロパティが取得され、ローカルが取得されcamelCase、プライベートメンバーが取得されます_leadingUnderscore
KChaloux 2013

メンバー変数と言ったとき、フィールドまたはプロパティを意味しますか?
カイザー2013

Delphiの開発者は、関数/メソッドのパラメータの前に「a」を付けて名前を付ける傾向があります(aParameter: string)。特に値で渡される場合、パラメーターは本質的にローカル変数であることに気づきますが、varがパラメーターとして実際に渡されることを「確認」することはしばしば非常に役立ちます。C#にそのような規則はありますか?
Marjan Venema 2013

もう1つは、メンバーフィールドです。Delphianは、それらの前に「F」を付けます。アンダースコアでそれらを宣言するC#コードを見ましたprivate string _SomeString。それは慣習だと思いますか?(ちょうど私のつま先をC#に浸して、このことについて疑問に思います)。
Marjan Venema 2013

1
これは不正確です。公開メンバー(および公開クラスなど)の命名規則が公開されています。
スビック2013

7

.Net Frameworkの命名規則(v4.5v1.1)はこれにとらわれません。 ローカル変数の命名基準は規定されていません。 これらに名前を付けるための独自の規則を決定する必要があります。

私は個人的にcamelCaseを使用しthis、必要に応じてパラメーター名からメンバー変数を明確にします。ただし、先頭のアンダースコア(つまり_memberVariable)も有効です。


1
これがまさに命名規則を使用する理由です- thisローカル変数をフィールド/プロパティと区別するために使用します。毎回5文字追加するのは無理です。
Sinatr
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.