列挙体パラメーターまたはブール (Boolean) 型パラメーターの選択

パラメーターの型を列挙体にするか、Boolean 値にするかを判断するには、次のガイドラインに従います。

メンバーが複数のブール型のパラメーターを持つ場合は、列挙体を使用します。

列挙体を使用すると、メンバー シグネチャのわかりやすさが大幅に向上します。 たとえば、次のようなメソッド呼び出しがあるとします。

Type.GetType("Contoso.Controls.Array", True, False)
Type.GetType("Contoso.Controls.Array", true, false);

Type::GetType("Contoso.Controls.Array", true, false);

このような呼び出しは、ドキュメントを確認するか、コード コメントを追加しない限り、理解することが非常に困難です。 次のコード例に示すように、複数のブール値の代わりに列挙値を使用すると、呼び出しが大幅にわかりやすくなります。

BetterType.GetType("Contoso.Controls.Array", _
    ErrorOptions.ThrowOnError, _
    CasingOptions.CaseInsensitive)
BetterType.GetType("Contoso.Controls.Array", 
    ErrorOptions.ThrowOnError, 
    CasingOptions.CaseInsensitive);

BetterType::GetType("Contoso.Controls.Array",
ErrorOptions::ThrowOnError,
CasingOptions::CaseInsensitive);

3 つ以上の値を使用する必要がないことが確実な場合を除いて、ブール型を使用しないようにします。

列挙体を使用した場合、新しいバージョンで値を追加できます。ただし、列挙体に値を追加すると、互換性の問題が発生する可能性があります。 詳細については、「列挙体への値の追加」を参照してください。

Portions Copyright 2005 Microsoft Corporation. All rights reserved.

Portions Copyright Addison-Wesley Corporation. All rights reserved.

設計ガイドラインの詳細についてを参照してください、「フレームワークの設計ガイドライン。規則、慣用句、および再利用可能なパターン。ネット ライブラリ」本クシシュトフ Cwalina、ブラッド エイブラムス、アスキー、2005 年発表しました。

参照

概念

パラメーターのデザイン

その他の技術情報

メンバーのデザインのガイドライン

クラス ライブラリ開発のデザイン ガイドライン