Antoine.st Better Naming

How do you name ?

関数やら変数やらにどのような名前をつけるか、ってのは、かなり難しい問題です。いつも悩んだ挙句、変な名前をつけてしまってます。とりあえず、大まかな指針としては、

  • クラス、変数には名詞
  • 関数、サブプロシージャには動詞
  • コレクション、配列は複数形
  • フラグは IsXXX。

といった感じでしょうか。もう少し詳しく見ていくことにします。

Class/Variable Name

たとえば、顧客を示すクラスには、Customer という名前をつけます。では、顧客情報を見るフォームには、なんと言う名前をつければいいのでしょう? CustomerForm かなぁ。顧客を選択するダイアログにはなんと言う名前をつければいいのでしょう? CustomerSelectDialog ですかね。

Function/Procedure Name

データを取得する関数だと、GetData() みたいな感じです。逆に設定する関数だと SetData()。このとき、主語はその関数を持つクラスになります。どういうことかというと、1. データ層からデータを取得して、2. フォームの各コントロールに設定する関数の場合、データ層から見ると GetData()、フォームから見ると SetData() ということになります。