58FLOW

Android、行動経済学、ガジェットなどが好きです。日々感じたことなんかを書きます。

プログラマーが戦う見えない敵2

はじめに

プログラマーが戦う見えない敵」の続き的な。この手の話はきっとどんどんでてくるので何度か書くかもしれないです。

f:id:flow58:20140327023214j:plain

デバッガーが言うバグ発生条件を信じてはいけない

バグを取り除くためにデバッグをする専門の人を雇うことがありますが、当然彼らはプログラマーではないのでプログラムの詳細な部分は知りません。詳細なバグの発生条件を記述してくれるのはありがたいのですが、その発生条件は偶然で起こったもので実際の発生条件は別にある場合があります。

対策

自分で検証する。(当たり前だけど)

不正なマスターデータ

サービスなどを作っているとプログラマー以外がマスターデータを入力することもありますが、そのデータが不正で実行時の例外を発生させる場合があります。それをプログラムのミスかも知れないと思って何時間も調査したあげく結局データの不整合だったということもあります。

対策

ロード時の検証コード書くなど。(対策考え中)

おわりに

こういった自分の領域で起こったこと意外でも自分が対処しなければ行けないことがあって、まあそれも仕事のうちなのですがリリース前など忙しいときにこれがあるときついのでテストコードはしっかり書きたいですね。

※かなり急いで書いてしまったのであとで書き直すかも。