こんばんは!

 

ゆうです!

 

 

勉強のためにデバッグを行なう

 

エラーやバグが発生した時、

初心者の時はいつも焦りますよね。

 

 

『やばい。どうしたらいいかわからない』

 


何がいけないのか検討もつかないで

いたずらに時間ばかりがかかってしまい、

挙句原因がただのタイプミスだったときの

絶望感は誰しも感じた事があるのでは

ないでしょうか?
 

 

しかし、エラーやバグが発生した時は、

あえてコレはチャンスだと思ってみましょう。

 


そのエラーやバグを解消する過程で、

本を読んでいるだけでは学べない

多くの事を勉強する事ができるのです。

 

しかし

  • ただ闇雲に変更を加えてなんとなく動作してしまった
  • エラーメッセージをそのままコピペして、検索に引っかかった方法をそのまま適用して事なきを得た

この様なその場しのぎなデバッグをしていると、

折角の学習チャンスを逃してしまうことになります。
デバッグを学習機会に変える準備をしておきましょう。

 

エラーメッセージを読む

 

まず、大抵の場合エラーメッセージを

読めばエラーの原因はそこに

書いてあります。

 


エラーメッセージは赤い上に英語なので、

初心者を殺しに来ている感じが否めません。

 


しかしながら、ぶっきらぼうなりに

ちゃんと必要な情報をプログラマーに

提供しているのです。

 


エラーメッセージは大きく分けると

以下の3つの情報が含まれています。

 

  • エラーの発生した時のタイムスタンプ
  • エラーの種類
  • エラーが発生しているファイルとその行数及び、エラーが発生するまでの経路(メソッドの呼び出し順)
 

上記の3つを注意して

エラーメッセージを見る事で、

いつどこでどんなエラーが起きたかを

把握しやすくなります。

 

 

エラーメッセージの読み方は

使用している言語やフレームワークに

よって出力のされ方や内容が異なります。

 

そのため、学習する内容によっては

読み方自体が異なることが多いでしょう。
ただし、情報の整理の基本は変わらないはずです。

 


上記のようにエラーメッセージを

整理していけば、落ち着いてエラーに

対処することが出来るようになります。

 

デバッグの手法を学ぶ

 

上記のように大抵の場合はエラーの原因が

書かれているのですが、場合によっては

エラー文を読んだだけでは、

直接的な原因を特定する事が

出来ない事があります。

 


その場合は、エラーが起きている

該当箇所周辺や関連するコードを

注意深く読みながら、デバッガを

駆使して問題の原因を突き止める

必要があります。

 

 

デバッグの細かい手法はWikipediaにも

書かれていますし、

 

実践 デバッグ技法 -GDB、DDD、Eclipseによるデバッギング

 

のように体系的にまとめられている物が

多数存在するので、ここでは割愛します。

 

 

また、デバッグを行う上でデバッグしやすい

ツールを使うというのも非常に重要です。


PHPを使っている場合はPHPStormという

高機能な統合開発環境(IDE)を使ったり

xdebug等のデバッグ用のライブラリを利用する事で

より快適なデバッグライフを手に入れる事が出来ます。

 


自分の手元の環境や自分の肌に合うツールを

試行錯誤しながら探すのもプログラミング学習の

楽しさの一つでもあります。