デバッグの方法

デバッガを使用できる環境にあるのなら積極的に使用すべきだが、一般的な方法を考えてみた。以下の手順である。


1) 問題のある処理に関連するデータを知る
2) そのデータの初期化、代入、参照している箇所を見つける
3) そのデータの値を表示してみる


もちろん、この手順に従う必要はないが、大体こんな感じだと思う。そこで、もう少し考えを広げて、デバッグをしづらい(可読性の低い)コードを考えてみる。


1)で、処理に関連するデータの個数が多かったり、関連するデータの依存関係が複雑だとやっかいである。
2)で、データがglobalやstaticだと追いかける範囲や考える範囲が広いのでやっかいである。
3)で、データが表示しずらいとやっかいである。またデータが処理とどう関係しているのか分かりづらいとやっかいである。


可読性が低いというのは、データを追いかけづらいということに非常に関係していると思う。