web-dev-qa-db-fra.com

Dois-je toujours utiliser "is" comme préfixe pour les variables booléennes?

Dois-je toujours utiliser is comme préfixe pour les variables booléennes? Qu'en est-il des booléens qui indiquent quelque chose dans le passé? Dois-je écrire isInitialized ou wasInitialized? Dois-je écrire pour les propriétés IsManyMembers ou HasManyMembers?

Existe-t-il des meilleures pratiques? Ou devrais-je simplement écrire conformément aux règles anglaises?

55
Mark Twain

Pas vraiment, car les booléens ne sont pas toujours utilisés pour indiquer qu'un objet "est" quelque chose.

"a" est un préfixe tout aussi valide "était", "peut" sont également valables dans des circonstances particulières, aussi, j'ai vu le suffixe "Able" utilisé.

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

Tout dépend de ce qui rend le programme lisible.

57
James Anderson

J'irais avec des règles anglaises. J'ai tendance à penser au prochain codeur qui va regarder votre travail comme un maniaque maniant une hache qui va venir après moi si le code est difficile à comprendre. Lorsque je garde cela à l'esprit, la meilleure option pour ma santé est de garder le code propre et facile à lire, ce qui signifie le meilleur anglais et la meilleure langue de domaine possible.

8
Klee