Latest topics > メソッド名は三人称単数形にするべきかどうか - outsider reflex

screenshot

例えばW3C DOMでは、子ノードがあるかどうかを調べるメソッドの名前はhasChildNodes()(三人称単数形)だけど、子ノードを追加するメソッドはappendChild()(不定形、原形)となっている。どうしてこのようにバラバラなのか? どっちかに統一しないのか? という話。 Matz氏はRubyのメソッド名から三人称単数形を廃して原形に統一したいらしい。上に挙げたような例なら、hasChildNodes...

http://piro.sakura.ne.jp/latest/blosxom/topics/2008-10-08_naming.htm

http://www.aerith.net/design/bool-j.html 言語が高級になればなるほど英語圏人かそうでないかで差が広がる気がしている/なでしこ・・!
bool値を返すメソッドはif文の中に書かれる事が多いのが関係しているのかも。
Perlの@ISA (is-a)が思い起こされる。
命名規則
hoge.hasA()ならhogeオブジェクトが主語になるから、hasになるのが自然だよなぁ。

http://b.hatena.ne.jp/entry/http://piro.sakura.ne.jp/latest/blosxom/topics/2008-10-08_naming.htm