カタツムリ2010年09月05日

「プログラム学習その8」

みなさん、おはようございます。

休日出勤のみなさん、お勤めご苦労さまです。

猛暑の記録も更新中ですが、
プロ野球では、山本昌選手が45才最年長での完封を達成しましたね~

数値が大きくなっていくことは、
データーを扱う身としては、
ちょっとした危機に感じてしまいます。(^^;;

桁溢れしないだろうか?
「あそこの変数には、上限チェックを入れて置いたかな?」

127までは、問題ないけど、128になったら、
それをインデックスで参照しているテーブルがあると、
数が足りていないバグは、起こりがちです。

アセンブラの常識では、必ず、and $7F を入れれば、
この問題は、完全に解決できますが、

プログラムを習い始めの人は、
この最大値について、意識が薄いものです。

設計するときは、最大値をどうするのか?
必ず意識してみましょう!

そして、もう少しやっかいなのが、0の扱いです。

数値としての、0は、0で良いのですが、
インデックスや参照の時には、
0は、動作しない方が良いでしょう。

0で、エラーを出力する必要はありませんが、
デフォルトの初期化で、抜けを防ぐ意味でも、
0は、未処理として扱います。

つまり、RPGの経験値のパラメーターなら、
レベル0は、ありえなくなり、レベル1からスタートです。

0を、レベル1と見なすようなことは、
なるべく避けましょう。

そうすると、0は、殆ど不要になりますし、
0があったら、エラーかも?
というように、間違いを発見しやすくなります。

0≒システムとしての初期化はできているが、
アプリケーションとしては、未処理である。
このようなルールで統一する方法をお勧めします。

今日も「いいスマイル」で行きましょう!


ツイッターはじめました~フォロー待ってま~す!!
↓↓↓下記の3つのバナーをクリックして下さい。ランキングUPにご協力をお願いします。↓↓↓

にほんブログ村 経営ブログへランキングUP!

ランキングUP!

banner2.gif 人気blogランキング!

投稿者 shiozumi : 14:13