【初心者】プログラミングのエラーを解決する3つの方法(そのうち1つは鉄板な手段)

プログラミング

プログラミングを行っている中での大きな課題の1つ、それはエラーです。

逆を言うと、エラーをうまく解決できることができるのであれば、プログラマーの大きな実力につながります。

ただ、プログラミングを初めて間もない頃には、

  • エラー解決方法がわからない。
  • エラー解決にすごく時間を費やした。
  • エラー解決するのが疲れてプログラミングた嫌になる。

ということがあり、エラーに対してうまく対処できるわけではありません。

それでは実際に、プロのプログラマーはどのようにエラーに対して解決をしているのでしょうか。

今回は、実際のプログラマーが解決する方法をベースにそのやり方についてお話をしていきます。

もちろん、場合によっては、様々なエラーの解決アプローチがあります。

その為、1つの方法としてと参考にしていただければと思っています。

エラーメッセージをググる事で解決する

エラーが発生して、原因がわからない際に、まず初めに行うこと。

それはgoogleにて該当のエラーを検索するという方法です。

これはプロのプログラマーでも実施するエラー解決の鉄板的な方法です。

WEBサイトのプログラミングであれば、ブラウザの画面上にエラーメッセージがでているかもしれません。

また、WEBサイトを含むシステム全般のプログラミングに置いては、ログにエラーメッセージが出力されているかと思います。

  1. エラーメッセージをgoogle検索する。
  2. 同じ様なエラーが発生した他のプログラマーが共有してくれている情報を見つけ出す。
  3. 解決方法も見つけ出す。
  4. それを参考に自分のプログラムを修正していく。

エラーメッセージは基本的には英語です。

ただ、その英語のメッセージのままGoogle検索にかけることにより、最適な回答のページを提示してくれます。

このGoogle検索により回答ページを探しての解決が、大半のエラーを解決してくれるでしょう。

まずは、エラーメッセージをGoogle検索して、解決方法を探す。

ログレベルを変更してエラーの解決する

  • システムがうまく動かない。
  • 出力されているエラーだけではよくがわからない。
  • 情報が少なすぎて、解決できそうにない。

こんな時には、ログレベルを変更してみることがおすすめです。

ログレベルとは、ログへ出力される情報についてどこまで出力するかを定義しているものになります。

通常は詳細まで出力されるように設定されていないかと思います。

それはログの量が膨大になってしまうためですね。

ログレベルを変更することにより、詳細情報が出力されます。

したがって、今までわからなかったエラーの情報が表示されるため、それを元に、上記の通り Google 検索することで解決へ進めるというやり方です。

エラーの情報が足りない時にはログレベルを変更する。

発生箇所を絞り込みエラーの解決をする

次のエラーの解決のやり方としては、どこでエラーが発生しているかの場所を絞り込むというやり方です。

複数行で書かれているプログラムコードのどこの記述に問題があり、エラーが発生しているか。

これの絞り込みを行います。

例えば、

A、B、C

と3つのプログラムコードの記述がある場合。

どこの記述に問題があるかを突き止めます。

意図的にAとBの間、BとCの間にログ出力を仕込み、実行した際にどこまで正常に動作したかを確認します。

これによりA、B、Cどこに問題があるかが突き止められるということです。

ログ出力を細かく行い、エラー発生箇所の特定をする。

まとめ

今回はエラーの解決方法についてお話をしてきました。

内容としては以下でした。

  • エラーメッセージをググる事で解決する
  • ログレベルを変更してエラーの解決する
  • 発生箇所を絞り込みエラーの解決をする

開発している内容や、方法などによってエラーの解決方法は異なってきます。

今回紹介したやり方が全てではありませんが、一例として参考にして頂けると幸いです。

ただ現在大抵のエラーの解決手段としてはgoogle検索すること。

これがプログラマーとしては誰もが実施している方法にはなります。

過去のプログラマーの先輩たちが解決したやり方がネット上には溢れています。

相当特殊なことでない限りは、類似のエラー事象や解決方法は必ずネット上には存在しているでしょう。

その情報を見つけてエラー解決していく事がとても効率的な解決方法になります。

プログラミングを続けていると、このやり方には自然と慣れてくる為、初心者のうちは、沢山のエラーに出会い経験を積んでいくのが望ましいかと思います。

以上です。