基本的な考え方一覧
- 具体的な単語を選ぶ
- 接尾辞や接頭辞を使って情報を追加する。
- 名前の長さを考慮する。
- 「変数の種類」で「名前のフォーマット」を変える。
- メソッドの場合は「そのメソッド本来の目的」を名前にする。
- メソッドには「動詞」を入れる。
具体的な単語を決める。
意味が広すぎる単語とその代替案
例えば、makeよりはcreateの方が意味は明確になります。
単語名 | 代替名 |
---|---|
get | 「get」自身はメンバの値を返す役割のみにする。「Fetch」(DBから取得)や「Download」(ネットから取得) |
send | deliver、dispatch、announce、distribute、route |
find | search、extract、locate、recover |
start | launch、create、begin、open |
make | create、set、build、generate、compose、add、new |
filter(抽出する) | select(選択する)、exclude(除外する) |
Clip(切り抜く) | remove(削除する)、truncate(切り詰める) |
接尾辞や接頭辞を使って情報を追加する。
単位を追加する。
- size → max_size
- limit → max_kb
単位の例
用途 | 単語 |
---|---|
限界値 | max、min |
範囲を指定 | first、last |
包含(ほうがん)、排他 | begin、end(endは範囲に含まれない) |
属性を追加する。
全ての変数名に属性を必ず付加するのではなくバグに繋がりそうな箇所はできるだけ追加すること。
- html →html_sjis
- url → url_enc
名前の長さについて
長さの判断
- ローカル変数等のスコープが短い変数の場合は変数名は短くて良い(極端な話mとかgとかでも理解できるので良い)
- 逆にグローバル変数とかスコープが大きい変数の場合は長い名前にすること
省略系は使って良いか?
BackSpaceNameとかなら「BSName」に省略してしまっても良いかの判断は一般的に認識されているかで行いましょう。例えば検索エンジン最適化の「SEO」とかなら一般的に広く認知されているので他人が読んだときでもすぐに理解できるでしょう。
書いても書かなくても意味が通じる単語は捨てる。
例えば、「ToString」とかは「ConvertToString」を短くした表現だと思われるが、「ToString」で十分意味が通じています。
「変数の種類」で「名前のフォーマット」を変える。
例えば、定数は「MAX_LENGTH」、変数は「value」等。
定数一覧
プログラミング名 | |
---|---|
長さ | LENGTH |
最小 | MIN |
最大 | MAX |
パス | PATH |
データベース | DATABASE |
ディレクトリ | DIRECTORY |
合計 | TOTAL |
添字 | INDEX |
完了 | DONE |
初期化 | INITIALIZED |
メソッドの場合は「そのメソッド本来の目的」を名前にする。
例えば、引数で数の配列を渡してその数を全て足算して戻り値として返すメソッドがあった場合に「getSum」(取得する)とするのではなく「computeSum」(計算する)とすることとした方が自然です。「取得」がメソッド本体の本来の目的でなはなく「計算」が本来の目的になる。
この記事へのコメントはありません。