デバッグ(debug)とは
バグ(不具合原因)を取り除く行為のことである。デバックではない。
バグを発見する行為、ちゃんと動いているかを確認するソフトウェアテストとは異なる。
もちろんバグに気付かなければ修正できず放置されてしまうため、同様に重要。
ソフトウェアが、期待・想定と異なる振る舞いや出力をするときに、その原因となっている箇所を特定し/取り除く作業がデバッグである。
バグは、ソフトウェアを作成しているといつの間にか入り込んでいるものである。とくに中規模以上のソフトウェア開発において、バグを含まずに完成品を作り上げることは極めて難しい。ソフトウェアの品質を確保するためにも、ソフトウェアテストを行っておかしな挙動を見つけ、その原因であるバグを修正するという作業はソフトウェア開発の必須作業となる。
デバッグ作業は、プログラミングとはまた別の難しさのある知的作業である。多くの場合デバッグ作業を担当するのは、バグが含まれるソフトウェアを作った開発者自身なので、自分がしたおぼえのない誤り、間違っているという意識がない部分を探すという、心理的にもつらい作業である。またプログラムが膨大である場合も一行一行まで目を通さなくてはいけない。
このデバッグの作業を補助するツールのことをデバッガ(debugger)と呼ぶ。デバッガの種類にもよるが、たいていのデバッガは、プログラムの実行を気になるポイントで一時停止したり、そこからプログラムをちょっとずつ動かして途中のメモリや変数の中身を覗き見たり、ということができる。
また、デバッグをデバッガに頼らずに行うことを机上デバッグと呼ぶ。検証環境がそこになく、伝聞などで得た情報を元にデバッグを行うことを念力デバッグと呼ぶ(参考)。
コンパイラは、通常、リリースビルドとデバッグビルド(ともしくはその他のビルドパターン)を備えており、オプションとして選択することが出来る。
デバッグビルドを選ぶと、デバッグ情報を含んだオブジェクトコードを生成して、デバッグ作業に役立てることが出来る。
ニコニコで「デバッグ」とタグがついていれば、それはゲームなどの「デバッグモード」の動画を指している場合が多い。
デバッグモードはテストモードなどともよばれ、ゲーム開発者たちがデバッグを行ったり、バグが無いかどうかテストプレイをするために用いるモードである。
ランダムに発生するイベントを任意で発生させることができたり、各種フラグのON/OFFを変更したりできる。
もちろん、市販のソフトはデバッグモードは封印(or削除)されているのだが、改造コードを用いればデバッグモードを開放することが可能な場合がある。
掲示板
53 ななしのよっしん
2020/12/10(木) 00:03:30 ID: tmRIlnibfT
みんな薄々気付いてたけど
「とりあえず見切り発車でリリースしてユーザーに無償でデバッグさせます」って公言する企業が出てくるのはすげえ世界だな、洋ゲー業界…
暗黙の了解のままならともかく、明言しちゃったらもう終わりだろ
未完成品売って、普通なら給料出してアルバイトを雇うべき作業をユーザーにタダ働きでやらせるって絶対そのうち規制されるぞ
54 ななしのよっしん
2023/06/01(木) 20:23:01 ID: 5TicZPicw+
55 ななしのよっしん
2023/08/13(日) 21:11:05 ID: FMfHTc8fh/
デバッグは終わらない 【チーム運営】
桜井政博のゲーム作るには
12万 回視聴
1 日前
https://
急上昇ワード改
最終更新:2024/04/25(木) 07:00
最終更新:2024/04/25(木) 07:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。