マニュアル: ネーミング

投稿日: 更新日:

一般

  • 意味のある名前を付ける。
    • ちょっとしたユーティリティメソッドは除いて、Stringにstrとか付けない。
  • 汎用的なネーミングは避けた方がよい。
    • Javaではパッケージで区別できるが、混乱しやすい。
  • 変数のスコープに応じた長さを使い分ける。
    • ただし、あまり長すぎなければ問題ない(省略するほうが問題がある)。

省略形

自分で見たもの、あるいは書いているもので、 これはOK、これはダメというのを書いてみます。

問題ないもの

省略形 元の単語 備考
i, j, k なし カウンタ
e exception 例外
len length 長さ
col column
prop property プロパティ
conn connection 接続(conだとconsoleと紛らわしいため、connが望ましい)

これらは広く使われているため、おそらく問題ない。

省略形 元の単語 備考
bak backup 変数名としては使わない
isr InputStreamReader java.ioは慣用としてクラス名の先頭をつなげたものが使われるはず。。。
msg message
rs ResultSet
stmt statement

黒に近いグレー

省略形 元の単語 備考
cnt count カウンタだが、con’t(続く)とよく間違える

母音の省略形は厳禁

省略形 元の単語
rslt result
flg flag
fld field

禁止事項

  • システムハンガリアンは使用しない。
    • ただし、スコープを区別するものは許容範囲内。
    • アプリケーションハンガリアン(本来の記法)は問題ない。
  • 母音を抜くのは厳禁。
    • 例: field => fld
    • ただし、広く使われているものは許容範囲内。
  • これに限らず、不必要な省略をしない。
    • 例: resresultresponseか分からない。

Ruby

  • updated_at
  • created_at

AcitveRecordで自動的に更新されるもの。