IT基礎
バグ
初級読み方:バグ|英語:Bug
プログラムの間違い・不具合のことで、英語で「虫」の意味だよ。
やさしい説明
バグとは、プログラムの中の間違い(不具合)のことです。コードにバグがあると、プログラムが期待通りに動かなかったり、エラーが出たり、突然止まったりします。
語源は本物の「虫(bug)」です。1947年、初期のコンピューター「Mark II」に蛾が挟まって誤作動を起こした実話が由来とされています。そのときのエンジニアが「バグを発見した」と記録したことから、プログラムの不具合を「バグ」と呼ぶようになりました。
バグはどんな熟練したエンジニアでも作り込んでしまうものです。大切なのはバグをゼロにしようとすることではなく、早く見つけて直す(デバッグする)仕組みを整えることです。
バグの主な種類
- タイポ(スペルミス):変数名や関数名のスペルを間違えた。例:
documnet(documentのミス) - ロジックバグ:条件分岐や計算式が間違っている。「以上」と「より大きい」を混同するなど
- オフバイワン:ループの回数が1つズレている。配列の最後の要素を取り逃がすなど
- ヌルポインタ参照:存在しない値(null/undefined)にアクセスしようとしてエラーになる
- 想定外の入力:ユーザーが予期しない値を入力したときの処理が抜けている
具体例
以下はよくあるバグのサインです:
- ボタンを押しても何も起きない
- 計算結果がおかしい(合計が合わないなど)
- ページのレイアウトが崩れる
- 特定の条件のときだけエラーが出る
- 同じ操作なのに毎回結果が違う
バグを見つけたら、デバッグという作業で原因を特定して修正します。
よくある疑問
Q: バグをゼロにすることはできる?
A: 完全にゼロにするのは非常に難しいです。大規模なソフトウェアにはほぼ必ずバグが残っています。テストを書いて早期発見し、修正サイクルを回すことが大切です。
Q: バグとエラーの違いは?
A: エラーはプログラムが異常を検知して止まること。バグはその原因となるコードの誤りです。バグがあっても即エラーにならない場合もあり(見えないバグ)、逆にエラーが出て初めてバグに気づくこともあります。
Q: バグはどうやって防ぐ?
A: コードレビュー(他の人にチェックしてもらう)、テストコードを書く、コンソールで値を確認しながら実装するなどの方法があります。
関連用語
📖 関連レッスン
レッスンを見る →