2016年4月19日火曜日

Booleanの変数名

どうも、大阪M・Tです。

今日はBooleanの変数名について

皆さんBooleanの変数にはどういった名前を付けていますか。

一般的に言われているのは以下のような感じでしょうか。

 ・3人称単数現在
  exists
  etc....

 ・is + 過去分詞
  isOpened
  isChanged
  etc....

 ・is + 形容詞
  isNull
  isEmpty
  etc....

・has + 名詞
  hasValue
  etc....

 ・can + 動詞
  canUpdate
  etc....

 ・should + 動詞
  shouldContinue
  etc....

It is true that you can update.とかいうふうに
これらはすべて"It is true that ~"で表せるって考えると納得できます。

まあそれはそれでいいんですが、

常々頭をなやませるのが、
「~しなければならない」をBoolean変数の名前にしたい時に
どうするかということです。

Booleanの変数名のつけ方をネットで調べると、
上記に挙げたものは簡単に見つかるのですが、
「~しなければならない」というのがなかなか見つかりません。

should + 動詞の「~すべき」が近いように感じますが、
なんとなくshouldは「~するほうが良い(けどするかどうかは自由)」みたいな
ニュアンスの気がしてしっくりこないんですよね。
shouldは、I should be there on time. = たぶん時間通りに着くと思う。
みたいな不確実性を表現するので。

助動詞 + 動詞がOKなんだったらmust + 動詞かなと思うんですが、
そういう例はなかなか見つからないのです。
皆さんいったいどうされているんでしょうか。気になります。

実は私、大学では比較言語学を専攻しまして
こういうのが気になって仕方がありません。
この前、「~しなければならない」の変数名のつけ方で1時間ほど悩みました。

その時はupdateするかしないかの判断だったので、
結局悩んだ挙句、canUpdateとしました。
canはニュアンスとしては「~できる(し、実際にする)」なので。

はい。そこまで考えんでもよろしいというお話でした。