Naming Conventions¶
概要¶
全クラス,メソッド,変数に対して不適切な名前を用いているものの個数が一定値の際に獲得できる実績です. メソッド等の宣言の際にJavaの慣習に従うことによって,コードに一貫性を持たせることができます.
| タイトル (Lv.1) | タイトル (Lv.2) | タイトル (Lv.3) |
|---|---|---|
| Start from the style | In name and in reality | Names and natures often agree |
| 課題 | 基準値 (Lv.1) | 基準値 (Lv.2) | 基準値 (Lv.3) |
|---|---|---|---|
| Trial | 10個以下 | 5個以下 | 0個 |
| Lexer | 30個以下 | 10個以下 | 0個 |
| Parser | 30個以下 | 10個以下 | 0個 |
| Checker | 30個以下 | 10個以下 | 0個 |
| Compiler | 30個以下 | 10個以下 | 0個 |
この実績には,以下の3つのルールが含まれます:
- ClassNamingConventions
- MethodNamingConventions
- VariableNamingConventions
ClassNamingConventions¶
Javaでは,クラスの名前には先頭を大文字で書き始め,単語区切りの先頭は大文字にする記法(パスカルケース)を慣習的に用います. このルールでは,クラスの名前にパスカルケースによる命名を行っているかチェックします.
コード例¶
// PascalCase のような記法がパスカルケースです.
// Javaで推奨されているクラスの命名法です.
public class PascalCase {}
このルールのチェックには,PMDの ClassNamingConventions を用いています.
MethodNamingConventions¶
Javaでは,メソッドの名前には先頭を小文字で書き始め,単語区切りの先頭は大文字にする記法(キャメルケース)を慣習的に用います. このルールでは,メソッドの名前にキャメルケースによる命名を行っているかチェックします.
コード例¶
public class PascalCase {
// camelCase のような記法がキャメルケースです.
// Javaで推奨されているメソッドの命名法です.
public void camelCase() {
}
}
このルールのチェックには,PMDの MethodNamingConventions を用いています.
VariableNamingConventions¶
Javaでは, final 宣言された変数の名前は全て大文字で,単語区切りにはアンダースコアを用いる記法,それ以外の変数にはキャメルケースによる記法を慣習的に用います.
このルールでは,変数の名前に適切な記法による命名を行っているかチェックします.
コード例¶
public class PascalCase {
public static final int FINAL_NUM = 0;
public String camelCase = "";
Hoge foobar = new Hoge();
}
このルールのチェックには,PMDの VariableNamingConventions を用いています.
ちなみに
プログラミングにおける命名規則には,いくつかのよく知られている記法が存在します.
| 記法名 | 記法 | 例 |
|---|---|---|
| パスカルケース | 複合語の先頭を大文字で書き始める | PascalCase |
| キャメルケース | 複合語の先頭を小文字で書き始める | camelCase |
| スネークケース | アンダースコア(_)を区切りの記号として単語をつなげる | snake_case |
| チェインケース | ハイフン(-)を区切記号として単語をつなげる | chain-case |