大文字の使用規則Capitalization Conventions

この章のガイドラインでは、大文字と小文字の区別を使用する際の簡単な方法を示します。一貫して適用すると、型、メンバー、およびパラメーターの識別子が読みやすくなります。The guidelines in this chapter lay out a simple method for using case that, when applied consistently, make identifiers for types, members, and parameters easy to read.

識別子の大文字化の規則Capitalization Rules for Identifiers

識別子内の単語を区別するために、識別子内の各単語の最初の文字を大文字にします。To differentiate words in an identifier, capitalize the first letter of each word in the identifier. 識別子内の単語を区別する目的で、さらに言うと、識別子のどこであっても、アンダースコアを使用しないでください。Do not use underscores to differentiate words, or for that matter, anywhere in identifiers. 識別子の用途に応じて、識別子を大文字にする適切な方法が 2 つあります。There are two appropriate ways to capitalize identifiers, depending on the use of the identifier:

  • PascalCasingPascalCasing

  • camelCasingcamelCasing

パラメーター名を除くすべての識別子に使用される PascalCasing (パスカル ケース) 規則の場合、次の例に示すように各単語の最初の文字 (2 文字を超える頭字語を含む) を大文字にします。The PascalCasing convention, used for all identifiers except parameter names, capitalizes the first character of each word (including acronyms over two letters in length), as shown in the following examples:

PropertyDescriptor HtmlTag

2 文字の頭字語には、特別な大文字と小文字の区別が使用され、次の識別子に示すように、両方の文字を大文字にします。A special case is made for two-letter acronyms in which both letters are capitalized, as shown in the following identifier:

IOStream

次の例に示すように、パラメーター名にのみ使用される camelCasing (キャメル ケース) 規則の場合、最初の単語を除く各単語の最初の文字を大文字にします。The camelCasing convention, used only for parameter names, capitalizes the first character of each word except the first word, as shown in the following examples. この例でも示されているように、camelCasing (キャメル ケース) が適用される識別子の先頭にある 2 文字の頭字語は両方とも小文字にします。As the example also shows, two-letter acronyms that begin a camel-cased identifier are both lowercase.

propertyDescriptor ioStream htmlTag

✔️ 複数の単語で構成されるすべてのパブリック メンバー、型、および名前空間の名前には PascalCasing (パスカル ケース) を使用します。✔️ DO use PascalCasing for all public member, type, and namespace names consisting of multiple words.

✔️ パラメーター名には camelCasing (キャメル ケース) を使用します。✔️ DO use camelCasing for parameter names.

さまざまな種類の識別子の大文字化の規則を次の表に示します。The following table describes the capitalization rules for different types of identifiers.

識別子Identifier 大文字小文字の区別Casing Example
名前空間Namespace PascalPascal namespace System.Security { ... }
種類Type PascalPascal public class StreamReader { ... }
インターフェイスInterface PascalPascal public interface IEnumerable { ... }
方法Method PascalPascal public class Object {
public virtual string ToString();
}
プロパティProperty PascalPascal public class String {
public int Length { get; }
}
イベントEvent PascalPascal public class Process {
public event EventHandler Exited;
}
フィールドField PascalPascal public class MessageQueue {
public static readonly TimeSpan
InfiniteTimeout;
}
public struct UInt32 {
public const Min = 0;
}
列挙値Enum value PascalPascal public enum FileMode {
Append,
...
}
パラメーターParameter CamelCamel public class Convert {
public static int ToInt32(string value);
}

複合語と一般的な用語を大文字にするCapitalizing Compound Words and Common Terms

ほとんどの複合用語は、大文字化の目的で 1 つの単語として扱われます。Most compound terms are treated as single words for purposes of capitalization.

❌ いわゆる閉じた形式の複合語に含まれる各単語を大文字にしないでください。❌ DO NOT capitalize each word in so-called closed-form compound words.

これらは、endpoint のように 1 つの単語として書かれた複合語です。These are compound words written as a single word, such as endpoint. 大文字と小文字の区別のガイドラインの目的としては、閉じた形式の複合語を 1 つの単語として扱います。For the purpose of casing guidelines, treat a closed-form compound word as a single word. 最新の辞書を使用して、複合語が閉じた形式で書かれているかどうかを判断してください。Use a current dictionary to determine if a compound word is written in closed form.

PascalPascal CamelCamel NotNot
BitFlag bitFlag Bitflag
Callback callback CallBack
Canceled canceled Cancelled
DoNot doNot Don't
Email email EMail
Endpoint endpoint EndPoint
FileName fileName Filename
Gridline gridline GridLine
Hashtable hashtable HashTable
Id id ID
Indexes indexes Indices
LogOff logOff LogOut
LogOn logOn LogIn
Metadata metadata MetaData, metaData
Multipanel multipanel MultiPanel
Multiview multiview MultiView
Namespace namespace NameSpace
Ok ok OK
Pi pi PI
Placeholder placeholder PlaceHolder
SignIn signIn SignOn
SignOut signOut SignOff
UserName userName Username
WhiteSpace whiteSpace Whitespace
Writable writable Writeable

大文字と小文字の区別Case Sensitivity

CLR 上で実行できる言語は、大文字と小文字の区別をサポートする必要はありませんが、サポートしているものもあります。Languages that can run on the CLR are not required to support case-sensitivity, although some do. お使いの言語がサポートしている場合でも、フレームワークにアクセスする他の言語はそうではない場合があります。Even if your language supports it, other languages that might access your framework do not. そのため、外部からアクセス可能な API の場合、同じコンテキスト内の 2 つの名前を区別するために大文字と小文字の違いのみに依存することはできません。Any APIs that are externally accessible, therefore, cannot rely on case alone to distinguish between two names in the same context.

❌ すべてのプログラミング言語で大文字と小文字が区別されると想定しないでください。❌ DO NOT assume that all programming languages are case sensitive. しかし、そうではありません。They are not. 大文字と小文字の違いだけでは、名前を区別できません。Names cannot differ by case alone.

Portions © 2005, 2009 Microsoft Corporation.All rights reserved.Portions © 2005, 2009 Microsoft Corporation. All rights reserved.

2008 年 10 月 22 日に Microsoft Windows Development シリーズの一部として、Addison-Wesley Professional によって発行された、Krzysztof Cwalina および Brad Abrams による「Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition」 (フレームワーク デザイン ガイドライン: 再利用可能な .NET ライブラリの規則、用法、パターン、第 2 版) から Pearson Education, Inc. の許可を得て再印刷されています。Reprinted by permission of Pearson Education, Inc. from Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition by Krzysztof Cwalina and Brad Abrams, published Oct 22, 2008 by Addison-Wesley Professional as part of the Microsoft Windows Development Series.

関連項目See also