デバッグを支える知識(2) [プログラマー現役続行]
デバッグの基本的な方法については、「デバッグの科学的手法」に説明しています。それに関連して、デバッグでは、正しい知識を持っていることが重要であると「デバッグを支える知識」で述べています。
デバッグにおいては、知らない部分を適当にきっとこうだろうと断定して進めるのは危険です。たとえば、fopenとfreadを使用して1バイトをハードディスク上のファイルから読み込むことを考えてみてください。この場合、具体的にどのように読み込まれるかの仕組みを知らないのに、「最初の1バイトの読み込みでハードディスクから1バイトだけ物理的に読み込まれる」と仮定するのは非常に危険です。
この場合、ハードディスクからOSを経由してどのようにして読み込まれるのか知らないのであれば、「どのような仕組みで読み込まれるか分かっていません」という認識することが重要です。つまり、分かっていないからさらに調べたり学習したりする必要があるということを認識していることなります。
正しい知識を持たない部分を「きっとこうだろう」と間違った仮定をいつも繰り返していては、ソフトウェアエンジニアとしては成長しません。きちんとした学習をせずに知識がないにもかかわらず、思い込みでデバッグすることは、避けなければなりません。
デバッグにおいては、知らない部分を適当にきっとこうだろうと断定して進めるのは危険です。たとえば、fopenとfreadを使用して1バイトをハードディスク上のファイルから読み込むことを考えてみてください。この場合、具体的にどのように読み込まれるかの仕組みを知らないのに、「最初の1バイトの読み込みでハードディスクから1バイトだけ物理的に読み込まれる」と仮定するのは非常に危険です。
この場合、ハードディスクからOSを経由してどのようにして読み込まれるのか知らないのであれば、「どのような仕組みで読み込まれるか分かっていません」という認識することが重要です。つまり、分かっていないからさらに調べたり学習したりする必要があるということを認識していることなります。
正しい知識を持たない部分を「きっとこうだろう」と間違った仮定をいつも繰り返していては、ソフトウェアエンジニアとしては成長しません。きちんとした学習をせずに知識がないにもかかわらず、思い込みでデバッグすることは、避けなければなりません。
2015-04-29 07:06
コメント(0)
トラックバック(0)
コメント 0