今日は、プログラムが動かない時の対処法について書いてみます。
結論を言うと以下になります。
- ロジックを追って確認する
- ログを埋め込んで確認する
- デバッガで確認する
上記の順で確認すると、大抵の不具合は解決します。
プログラムを作成していると、動かないというのはよくある事です。
調べていくとロジックのミスの場合が多いです。
ロジックを追って確認する
専門用語で言うと、机上デバッグと言います。
実際にソースコードがどのように動くかを、1ステップごとに追って確認する方法です。
大体、大きなロジックによる不具合は、机上デバッグで見つけることができます。
この段階で見つかる不具合は、詳細設計の段階で不具合が入り込んでいるケースが多いです。
ウォータフォールモデルでの開発では、ソースレビューを行うので、不具合がなくともレビューで見つかると思います。
ログを埋め込んで確認する
机上デバッグである程度動くソースコードができると、ログを出力して確認します。
机上デバッグでは、データの変動による不具合が見えにくいことがあります。
その場合は、ログに変数の値を出力し、なぜ動作しないのかを確認します。
私は、ログを埋め込む時に、どこのログか分かるように埋め込むようにしています。
特にループ処理の場合は、何回ループが回ったかを確認するようにしています。
たまに不要なループが回って、処理に負荷がかかっている場合があります。
そういうのは、ログを埋め込んで確認するのが1番です。
デバッガで確認する
デバッガで確認するといろんな情報を取得することができます。
デバッガは、プログラムとは別のツールになります。
実際に仕事でプログラムを開発していると、ログを埋め込んで確認するのを飛ばして、デバッガでデバッグする事もあります。
上にも書いたように、デバッガは別のツールなのでいろいろと設定が必要になります。
ツールを使用できない事もあるので、ログを埋め込んで確認する方法も身に付けておきましょう。
デバッガを使用すると、様々な変数の値を見ることができます。
そこで、不具合に気づく事もよくあります。
デバッガは、プログラムとは別のツールになります。
実際に仕事でプログラムを開発していると、ログを埋め込んで確認するのを飛ばして、デバッガでデバッグする事もあります。
上にも書いたように、デバッガは別のツールなのでいろいろと設定が必要になります。
ツールを使用できない事もあるので、ログを埋め込んで確認する方法も身に付けておきましょう。
デバッガを使用すると、様々な変数の値を見ることができます。
そこで、不具合に気づく事もよくあります。
まとめ
プログラムには不具合が付き物です。
不具合のないプログラムを組むことが理想ですが、最初から不具合のないプログラムはありません。
なので、プログラミングの後に試験を繰り返し不具合を叩き出すのです。
その時必要となるのが、上にあげた3点になります。
では、今日はこの辺で。