Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

書籍 Effective Java | 一般的に受け入れられている命名規約を守る

パンくず

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

・フィールド名
あまり確立されていない。
一般に良い設計をされたクラスのフィールドは外部公開されないことによる。