|
||||||||||||||||||||||||||
| 前のページ 1 2 3 | ||||||||||||||||||||||||||
| ローカル変数 | ||||||||||||||||||||||||||
|
今までにも説明してきたように、名前には意味を持たせる必要がありました。しかしローカル変数の場合は、スコープが狭いことから変数を識別することが容易なため、限定的に省略した名前を使っても構いません。その場合は、省略する境界線を間違えないように気をつける必要があります。 |
||||||||||||||||||||||||||
| スコープが狭い変数名は省略した名前でもよい(N_LVL001) | ||||||||||||||||||||||||||
|
本来、変数名には役割を反映した名前を用いるべきですが、スコープが狭い変数は識別が比較的容易なため、省略した名前を用いても構いません。スコープが狭いとは、行数が少なく、ネストされたブロックが含まれていないことをいいます。以下の例を見て下さい。 |
||||||||||||||||||||||||||
public static void main(String[] args){
|
||||||||||||||||||||||||||
| "str2"は"try 〜 catch"ブロックの中で宣言され、中でも使用されています。ブロック内だけで有効な変数ですので、省略した名前で問題ありません。 "str1"は"try"ブロックの外で宣言されています。"str1"のスコープはmainメソッド全体となりますので、省略した変数名は規約違反です。こういう場合は、意味のある名前をつけるようにして下さい。 省略名を用いてもよい範囲の目安は、「一目で判読できる範囲」です。 |
||||||||||||||||||||||||||
| for文のループカウンタは、ネストごとに"i"、"j"、"k"、…を使う(N_LVL002) | ||||||||||||||||||||||||||
|
ループカウンタに"i"、"j"、"k"を使うのは、C言語などからの習慣です。for文の中だけで有効となるループカウンタには、むしろシンプルな名前を用いた方がよいと思います。 "i"、"j"、"k"でなく、"cnt1"、"cnt2"、"cnt3"などを使う方もいると思います。これは習慣の問題ですので、プロジェクト全体で統一する必要はありませんが、ソースコード単位では統一すべきです。 |
||||||||||||||||||||||||||
| まとめ | ||||||||||||||||||||||||||
|
ここまでネーミング規約について述べてきましたが、すべての規約は、次の4つのルールに集約されます。
|
||||||||||||||||||||||||||
|
表3:ネーミング規約4つのルール |
||||||||||||||||||||||||||
| この4つのルールは、ネーミング規約を通して一貫したポリシーです。そして最終的には「ドキュメントに頼らず、文章のように通読して意味のとれるプログラム」に繋がっていきます。 今回紹介したネーミング規約は1つの例として捉えて下さい。4つの基本ルールに反していなければ、プロジェクトごとにネーミング規約を作って利用するのも問題ありません。ただし、利用しやすく、守りやすい形にしたうえで、プロジェクト内で統一するのが重要です。また、SunのCode Conventions for the Java Programming Language(http://java.sun.com/docs/codeconv/)については守るようにするのが無難です。 前回でも書いたように、ネーミング規約の利用目的は、「ソースコードの可読性の向上」です。第1回で紹介した「コーディングの心得5ヶ条」も、その筆頭に「見やすさを重視せよ」とあります。ネーミング規約の利用による可読性の向上は、5ヶ条の目指す「良いコード」への最初の一歩です。 その効用は他人の書いたソースコードを読む時に限りません。自分の書いたソースコードを読み返すときにも、その効果を発揮します。例えば、コーディングの過程においても、個々のクラスやメソッド、変数などの役割が明確になり、処理内容の把握が容易になるため、ケアレスミスによる無用なバグの発生を減らし、作業を円滑にすることが期待できます。 ネーミング規約は決して「作業効率を下げるだけの煩わしい規則」ではないことがわかって頂けたかと思います。ネーミング規約を上手く利用することによって、より可読性の高い、即ち「保守性が高く」「生産性の高い」コードを書くことができます。保守性と生産性の向上のために、ネーミング規約の積極的な活用をお奨めします。 |
||||||||||||||||||||||||||
|
前のページ 1 2 3 |
||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
|
||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||
|
||||||||||||||||||||||||||

