なんとなくだけど、何かをする系のメソッドを使った文、例えばparentNode.appendChild(newChild)だったら、これに対応する英文というのは Hey, you "parentNode"! Append "newChild" to yourself as a child! みたいな「命令文」で、状態を尋ねる系のメソッドを使った文、例えばsomeNode.hasChildNodes()だったら、対応する英文は He "someNode" has some child nodes. みたいな「普通の文」なんじゃないのかなー、と思ってる。
な、なるほど。腑に落ちた。
ところでDOMにはgetElementByIdというメソッドがある。
document.getElementById("hoge");
これを命令文と解釈するとちょっと変。ネイティブ共は一体どういう英語をイメージしているのか?
I get an element by id of "hoge" from the document.
だろうか? とすると、この "I" は誰だろう? このメソッドを呼び出しているコード自身?
そう考えると
parentNode.appendChild(newChild)
は
I append "newChild" to "parentNode".
とも解釈できる。でもオブジェクトが中心にあるべきオブジェクト指向で、主語がメソッドを呼び出しているコードというのはイマイチだよね。
話は変わってRails。Rubyは三人称単数にしないルールだが、Railsの人は三人称単数現在形を良く使う。acts_as_listとかbelongs_toとか。
class Hoge < ActiveRecord::Base acts_as_list belongs_to :fuga end
これは
Hoge acts as list. Hoge belongs to Fuga.
といった英語に見えてくるので、ネイティブにとって s を付けないのはあまりにも不自然すぎるのかもしれない。