web-dev-qa-db-ja.com

ブール変数の接頭辞として常に「is」を使用する必要がありますか?

ブール変数の接頭辞として常にisを使用する必要がありますか?過去に何かを示すブール値についてはどうですか? isInitializedまたはwasInitializedと書くべきですか?プロパティIsManyMembersまたはHasManyMembersに書き込む必要がありますか?

ベストプラクティスはありますか?それとも英語のルールに従って書けばいいですか?

55
Mark Twain

必ずしもそうではありません。オブジェクトが何かであることを示すためにブール値が常に使用されるわけではないからです。

「has」は同等に有効な接頭辞「was」、「can」も特定の状況で有効です。また、「Able」という接尾辞が使用されているのを見ました。

So Object herring:-
 isFish = true
 isCat = false
 hasScales = true
 hasFur = false
 canSwim = true
 wasEgg = true
 eatAble = true

Object moggy:-
 isFish = false
 isCat = true
 hasScales = false
 hasFur = true
 canSwim = false
 wasEgg = false
 eatAble = false

それはすべて、プログラムを読みやすくするものに依存します。

57
James Anderson

私は英語のルールで行きます。私は、コードが理解しづらい場合、あなたの作品を斧使いマニアックであると見なす次のコーダーについて考えがちです。これを心に留めておくと、私の健康のための最良のオプションは、コードをクリーンで読みやすい状態に保つことです。これは、可能な限り最高の英語とドメイン言語を意味します。

8
Klee