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

参考文献: 命名規則 (プログラミング) - Wikipedia