回答編集履歴
3
誤スペル
answer
CHANGED
@@ -27,7 +27,7 @@
|
|
27
27
|
```
|
28
28
|
みたいな定義が見つかったりするわけです。
|
29
29
|
|
30
|
-
※なので、本来は定数名は中身の意味を示すものとするのであり、中身そのものにしてはいけません。`if(i >
|
30
|
+
※なので、本来は定数名は中身の意味を示すものとするのであり、中身そのものにしてはいけません。`if(i > VALUE_255) {` では全く定数の意味が無いのです。その点で `CONST_ALICE` という定数(名)は間違っています。
|
31
31
|
|
32
32
|
また、定数としておくことで変更をし易くすることにもなります。
|
33
33
|
データは幾つまで持てるようにするかとかループは最大何回やったら終わりにするとかいう限界値みたいなのはシステムにはよくあります。(上の BYTE_VALUE_MAX もそうですね。)
|
2
追加修正
answer
CHANGED
@@ -27,7 +27,7 @@
|
|
27
27
|
```
|
28
28
|
みたいな定義が見つかったりするわけです。
|
29
29
|
|
30
|
-
※なので、本来は定数名は中身の意味を示すものとするのであり、中身そのものにしてはいけません。その点で `CONST_ALICE` という定数(名)は間違っています。
|
30
|
+
※なので、本来は定数名は中身の意味を示すものとするのであり、中身そのものにしてはいけません。`if(i > VLAUE_255) {` では全く定数の意味が無いのです。その点で `CONST_ALICE` という定数(名)は間違っています。
|
31
31
|
|
32
32
|
また、定数としておくことで変更をし易くすることにもなります。
|
33
33
|
データは幾つまで持てるようにするかとかループは最大何回やったら終わりにするとかいう限界値みたいなのはシステムにはよくあります。(上の BYTE_VALUE_MAX もそうですね。)
|
1
追記
answer
CHANGED
@@ -36,6 +36,9 @@
|
|
36
36
|
10 種類のデータを扱うシステムで、当初それぞれ最大 100 件と決まっていたためにアチコチで `for(int i=0; i<100; i++) { ~ }` とか `if(j >= 100) break;` とかがあったとします。
|
37
37
|
やがて 10 種類の内 3 種類で最大件数を 200 件にすることになったとしたら・・・担当することになった(恐らくは開発した当人で無い)プログラマは、システム内にある全ての `100` という数字の中から 3 種類のデータの件数を表しているものを見つけ出して 200 に修正しなければなりません。
|
38
38
|
もし違う 100 を弄ってしまったら問題でしょうし、抜けがあってもまた問題でしょう。
|
39
|
+
|
40
|
+
※ for 文で 100 件をループするのに `for(int i=0; i<=99; i++)` と書くような人もいます。もし `100` を 200 に直そうとして "100" でコード内を検索していたらこの for 文は見つからず直し抜けとなるでしょう。
|
41
|
+
|
39
42
|
一方、 10 種類のデータの最大件数を定数として別々に定義してあり、ちゃんとそれらが使われていたなら
|
40
43
|
```
|
41
44
|
static final int DATA_A_MAX = 100;
|