バグ
プログラミング上の主なバグには、論理的なバグと誤記によるバグがある。
論理的なバグは、プログラムの設計過程において発生する。無限ループや計算間違いなどを引き起こし、時にはコンピュータを暴走させたり、逆に停止させたりすることもある。
誤記によるバグは、プログラムの実装過程において発生する。存在しないプログラムの参照、意図した範囲を超えた計算結果、数値計算の誤りなどを引き起こす。論理的なバグと同様に、コンピュータを暴走させたり停止させたりすることもある。
他に、オペレーティングシステム(OS)、デバイスドライバあるいは仮想マシンなどの実行環境や、コンパイラあるいはライブラリやアプリケーションフレームワークなどの開発環境にバグが含まれていることにより、アプリケーションソフトウェアにバグが発生することがある。