Javaプログラミングで、英単語を使って変数名を付ける事

Javaプログラミングにおいて、「変数の働き」をわかりやすくするには、どんな点に気をつけたらいいですか?

Javaプログラミングの変数名を付ける際、一般的な英単語を使いましょう。
英単語が表す意味から、「変数の働き」を予想しやすいからです。

ちょっと面倒でも、一般的な英単語を使って変数名を付けるようにしてください。
そうしたら、他のプログラマーにとっても理解しやすいJavaソースコードになります。

Javaプログラミングにおける変数名の付け方

一般的な英単語の意味は、既存の英語辞書などで調べやすいです。

なので一般的な英単語を使って変数名を付けると、その単語の意味から、「変数の働き」を理解するのに役立ちます。

変数名の付け方の例

以下に、英単語を使って変数名を付けている例を書きます。

ActionMapping mapping
mappingが単語です。

このように英単語を使うと、その単語の意味を、以下のような辞書やドキュメントで調べられます。

  • コンピュータ用語辞典
  • 英語辞典
  • Java APIドキュメント

調べた英単語の意味より、「変数が取り扱う情報」や「変数の働き」について、より理解できる可能性があります。

変数名の英単語mappingから、「変数の働き」を予想する例

英単語mappingによって、「変数の働き」をある程度予想できます。

mappingが、Java2 APIドキュメントのjava.util.HashMapクラスのMapと似ている言葉だと予想します。

するとこのmapping変数は、たぶん「何かと何かの情報の対応」、「キー」と「値」の対応を取り扱っている変数だと、予想できます。

参考:Java2SE 1.4のドキュメントなど。

しかし英単語mappingによって、「変数の働き」を理解できない場合もあります。

英語の辞書では、mappingは地図作成や数学の関数という意味があります。
「地図作成」という意味からは、「キー」と「値」のマッピングを予想できないです。

変数名に英単語を使わない例

英単語を使わないで変数名を付ける場合についてです。

以下に、わざと単語を使わないで変数名を付けてみます。
例:ActionMapping actMpg

この変数名actMpgからは、どんな情報を取り扱っているのか?
他の人にはわからないことが多いです。

既存の辞書やドキュメントで調べても、このactMpgが何を意味するのか、何を処理する変数なのか、わかりにくいと思います。

英単語
英単語・イメージ画像

Javaプログラミングで、クラス名を使って変数名を付ける事

英単語を使って変数名を付けるのと同じように、クラス名を使って変数名を付けるのも良いです。

クラス名を参考に変数名を付けると、変数名からクラス名(クラスの役割)を推測できます。
よって、その変数が「どんな情報」を取り扱っているのか、予想しやすいと思います。

クラス名を使って変数名を付ける例

以下に、クラス名を使って変数名を付けている例を書きます。
なお、プログラム(メソッド)の意味を理解する必要は、ありません。

public ActionForward perform(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response){
    ....
}

メソッドの引数名(変数名)では、それぞれクラス名の一部分の「英単語」を使用しています。

変数名がクラス名の一部分なので、その変数が何の情報を取り扱っているのか、少し予想できると思います。

つまり、変数名から「変数の働き」を予想できるので、プログラム処理を理解するのに役立つと思います。

例:引数名(変数名)が、mappingの場合。

このmapping変数は、ActionMappingクラスの変数だと、予想できます。
そして、ActionMappingクラスに関する情報を取り扱っている変数と予想できます。

※この記事は、2003年6月当時の記事になります。

【まとめ記事】Javaアプリの品質を保つため、Javaソースコードを書くための工夫

Javaソースコードを正しく書くための、ちょっとした工夫について、ご紹介しています。 変数の寿命を限定する書き方。 肯定的な条件を優先して条件分岐する書き方。 クラス…