たいした問題ではないが、lowerCamelCase ルール下で、略語で始まるクラスのインスタンスの命名に数秒悩まされる。例えば HTMLParser クラスのインスタンス名。
var myHTMLParser = new HTMLParser(); var parser = new HTMLParser(); var htmlParser = new HTMLParser(); var hTMLParser = new HTMLParser();
使いそうなパターンから並べてみたが、考えてみると、上記の例には変数名に目的、というか意味が含まれていない。 変数名は、その変数の使い方に見合った名前が良いのではないか。例えば、index.html をパースしたいという目的があるならば、
var indexHTMLParser = new HTMLParser();
あたりが丁度良い。しかし、ありとあらゆる HTML をパースするのが目的となると、この名前は適切ではないので、結局 myHTMLParser に落ち着いてしまう。こういう場合は my を付けるのがデファクトなのだろうか?