タイトルそのままです。
DBのカラムにせよ、変数名、メソッド名にせよ、設定キー名にせよ、 disable(d)
という名称を使う人は設計のセンスがありません。
disable(d)
が true
のときに無効になる。という 設定値のポジティブ/ネガティブさと、内容のポジティブ/ネガティブが逆転していることに気づいていないからです。
この罪は enable(d)
であることが二重否定となり、可読性を破滅させることとして現れます。
!disabled
こんな変態的な修辞法を使わなくてもはじめから enable(d)
としておけば良かっただけなのです。
しかし世の中には disable(d)
を使いたがる人が多くて困惑します。個人の趣味であればご自由にどうぞ。ですが、他者とコードを共有することが前提のプロの仕事としては失格です。
変更が比較的容易な変数名やメソッド名であればまだしも、一度設定してしまうと変更が難しいDBのカラム名や設定キー名に採用してしまうと目も当てられません。
この類型として、オンオフのUI(典型的にはチェックボックス)でチェックを入れると無効、外すと有効。というものがありますが、これもダメな例です。
はじめからチェックすると有効、外すと無効としておけば良いだけなんですが、こういうUIを作る人ってUIに関心がないというか言語感覚が貧しいんだろうな。と思います。もっと単純に直感的に考えましょう。