TOP設計・移行・活用> はじめに
Javaコーディング規約
Javaコーディング規約

第7回:変数に関するコーディング規約
著者: 電通国際情報サービス
高安 厚思、東田 健宏、藤村 浩士   2005/11/4
1   2  3  4  次のページ
はじめに

   今回は、コーディング規約の変数全般/インスタンス変数/クラス変数/ローカル変数について説明します。

   今回取り上げる規約は、仕事としてプログラムを書く方たちにとっては基本中の基本に位置する規約といってもよいものです。基本なだけに、開発の現場では確実に守ることが望まれますので、規約の文言を丸暗記するのではなく、規約の意図までしっかり理解するようにしてください。

本連載で紹介する規約に関しては、規約名のみを記述しています。規約そのものは、以下のURLからダウンロードして確認してください。
http://www.objectclub.jp/community/codingstandard/JavaCodingStandard2004.pdf
変数全般

   変数に意味を持たせて変数名を宣言しておくと、後にコードを修正するときに変数の意図が明確に理解でき、コード修正におけるバグ内包の防止につながります。変数の宣言時には変数の意図を表す変数名をつけるようにしましょう。


1つのステートメントには1つの変数宣言(C_VAL001)

   1つのステートメントには、1つの変数を宣言するべきです。これを面倒だからといって以下のように1つのステートメントで複数の変数を宣言してしまうと、どのようなメンバ変数が宣言されているのかを一目で判別するのは難しくなってしまいます。

悪い例
public class Product {
     private String productCode, productName, manufacturingId;
}
   しかし以下のようにすれば、Productクラスに宣言されているメンバ変数を一目で判別できるようになります。加えて、それぞれのメンバ変数を説明するJavadocを記述することも可能になります。

良い例
public class Product {
     ⁄** 製品コード *⁄
     private String productCode;

     ⁄** 製品名 *⁄
     private String productName;

     ⁄** 製造Id *⁄
     private String manufacturingId;
}
1   2  3  4  次のページ

参考文献など
Javaコーディング規約2004は以下のサイトおよび書籍として発表しています。本連載と共に参考にしてください。

「Javaコーディング規約2004」 http://www.objectclub.jp/community/codingstandard/JavaCodingStandard2004.pdf

「オブジェクト倶楽部」
Javaコーディング規約2004は、オブジェクト倶楽部で公開して頂いております。 http://www.objectclub.jp/

「超図解 Java ルールブック」
Javaコーディング規約が「超図解 Java ルールブック」という名前で書籍になりました。規約の詳しい内容に関しては本書籍をご覧ください。
http://www.x-media.co.jp/xbook/index.cfm?ID=6


Javaコーディング規約を理解するに際しての参考サイトをご紹介します。

「Code Conventions for the Java Programming Language」 http://java.sun.com/docs/codeconv/
※日本語訳を提供しているページ
http://www.tcct.zaq.ne.jp/ayato/programming/java/codeconv_jp/


Java コーディング規約を理解するに際しての参考書籍をご紹介します。

「Java の格言」
「Java の鉄則」
「リファクタリング - プログラミングの体質改善テクニック」
「The Elements of Java Style」
「Effective Java - プログラミング言語ガイド」
「Essential Java Style」

株式会社電通国際情報サービス 開発技術センター 高安 厚思
著者プロフィール
株式会社電通国際情報サービス  高安 厚思
株式会社電通国際情報サービス 開発技術センター
Java(J2EE)/オブジェクト指向の研究開発やプロジェクト支援、開発コンサルティングに従事。モデル、アーキテクチャ、プロセスが探求対象。今回は Javaコーディング規約2004の仕掛け人。


株式会社電通国際情報サービス 開発技術センター 東田 健宏
著者プロフィール
株式会社電通国際情報サービス  東田 健宏
株式会社電通国際情報サービス 開発技術センター
CTI、Webアプリの開発経験を経て、現在は主にプロジェクトマネジメント支援、プロセスエンジニアリング、ソフトウェア工学研究開発に従事。最近はコーチング、ファシリテーションといったヒューマン系スキルに興味を持ち日々修得に努めている。


株式会社電通国際情報サービス 藤村浩士
著者プロフィール
株式会社電通国際情報サービス  藤村 浩士
株式会社電通国際情報サービス アウトソーシング事業部所属
Java(J2EE)に関わる研究開発やプロジェクト支援の経験を経て、現在は、大手企業の業務会計システムの開発プロジェクトに従事。開発の傍らで、プロジェクトの「見える化」にも関心があり、オープンソースを組み合わせて「見える化」の実現に勤しんでいる。


INDEX
第7回:変数に関するコーディング規約
はじめに
  リテラルは使用しない(C_VAL002)
  インスタンス変数
  クラス変数