パンくず
Effective Java
一般的に受け入れられている命名規約を守る
概要
一般的に受け入れられている命名規約を守る
活字的規約
パッケージ名の規約
・ピリオドで区切られた要素を持ち、階層的であること。
・各要素は小文字のアルファベットと数字で構成されること。
・組織外で使用されるパッケージ名はトップレベルのドメインで始まるべきである。
・要素名は一般的に8文字以下にすること。
・意味を持った省略系は可。
※例としてはutility=>util
クラス
・クラス名は一つかそれ以上の単語から構成されること
・単語の先頭は大文字であること
・一般的に受け入れられている単語以外は省略しないこと
※受け入れられているケース=>Min,Max
・略語を全て大文字で表すか、キャメルケースにするか決まったルールはない
※DBConnectionクラスにするか、DbConnectionクラスにするか自由
メソッド名、フィールド名
・各単語の区切りは大文字にすべきだが、最初の単語のみ小文字にすること。
・定数は全て大文字のアンダースコア区切りにすること。
※アンダースコアの利用が推奨されているのは定数フィールドのみ
型パラメータ
・型パラメータは通常一文字
一般的なのは以下
名前 | 意味 |
---|---|
T | 任意の型 |
T,U,V,T1,T2,T3 | 一連の任意の型 |
E | コレクションの要素 |
K | マップのキー |
V | マップの値 |
X | 例外 |
文法的規約
クラス名の命名
単数名詞あるいは名詞句
インターフェースの命名
単数名詞あるいは名詞句
また、ableやibleで終わる形容詞で命名される場合もある
アノテーションの命名
利用法に応じて様々な品詞で命名される。
メソッドの命名
・動詞もしくは動詞句
・booleanを返すメソッドは大抵は単語isで始まる。
その他の例としてはhasやcan。
・属性を返却するメソッドはget+属性名か属性名そのままを返却する。
・別の型のオブジェクトを返すメソッドはtoTypeで命名する。
・レシーバーオブジェクトの型と異なる方を持つビューを返すメソッドはasTypeで命名する
・基本データを帰す場合はtypeValue
・static Factory Methodに対する命名は
valueOf,of,getInstance,newInstance,getType,newType
・フィールド名
あまり確立されていない。
一般に良い設計をされたクラスのフィールドは外部公開されないことによる。