命名規則

コーディングをするときは、この規則に対して、個々の言語の規則を上書きする。

大文字・小文字

  • メンバ・メソッド: camel case
    • ローカル変数と区別がつくように。基本的に2単語以上の名前を付けるので、ローカル変数と区別がつく。
  • グローバル変数・メソッド: g + camel case
    • グローバルオブジェクトのメンバ・メソッドという意味でcamel caseにする。
  • クラス名: pascal case
  • 定数、列挙体: 大文字(例外有り)
    • クラスに属する物は、メンバと同じ扱いの方がいい?
  • 引数: in_/out_ + snake case
  • ローカル変数: snake case

関数の引数の順番

  • 出力と入力がある場合、出力を先に書く
    • c言語の組み込み関数と同じ。オブジェクトのメソッドで引数に出力しかない場合、出力が最初で、後ろにオプション。
  • 重要度の低い物、渡す値が変わりにくい物を、後にする
    • オプションは最後

  • ローカル変数以外は長くてもいい
  • 複数形にはsをつける
  • 否定形をつかわない(not...)
  • 真偽値にはis, has, canをつける
    • doesは使わない。isExistingなどにする。
  • よく間違えるが、statusは対象(cpu、of)の状態で、stateはしている(runなど、of being)状態

ハンガリアン記法(todo)

  • アプリケーションハンガリアン(todo)
  • システムハンガリアン
    • MFCで使われていたけど、.netではなくなった
    • 型なんてIDEがあればすぐ分かるので、名前に付ける必要はない
    • 動的言語の場合、有効なケースがある
      • perlでの配列へのリファレンスなどは、名前に付けないと分かりづらい。