program study story

プログラムの勉強 アウトプット

Debugとは

Debugとはなにという疑問から書き覚えする。

デバッグとは

バグと呼ばれるプログラムや関数の間違いを見つけ、それらを排除する作業のこと

バグとは

仕様通りに動かないこと(エラーで停止、ハングアップする、動作が不安定など)

 

・バグを見つけるための流れ

1.バグの存在を疑う

⇩⇩⇩⇩

2.バグを発生させる条件を固定する

⇩⇩⇩⇩

3.必要な情報を得ながら、分割統治法などによって問題のコード範囲を特定する。

 

・見つける方法

1.目視でチェックする(=机上デバッグ)

2.分割統治法

3.デバッガを使う

 

1.目視でチェックする(=机上デバッグ)

ソースコードを実際に目で追いながら、エラーをチェックする。

利点:

ツールを使うと逆に発見できないこともあり、

特に、式や変数の誤りのような初歩的なミスの場合は効率的になる

2.分割統治法

そのままでは到底、解決できない大きな問題を小さく分割して、ひとつずつ解決していくことで、全体の解決を目指すという考え方。

プログラム全体ではなく、プログラム中のある部分にデバッグを実行する分を入れて、経過を表示させる方法。

この考え方に基づいたデバッグ手法がデバッグライトやスナップショットなどというデバック手法

3.デバッガを使う

デバッガとは、バグを発見するための専用ソフトウェアを指す。

プログラム中に観察店を設定して、その場所の変数の値を測ったり、プログラム強制終了時の状態を追ってみることができる。

 

原因を調査するのに使われるのが