So-net無料ブログ作成

デバッガが使いこなせない自分 [プログラミング]

http://d.hatena.ne.jp/hyoshiok/20090322#p1 を読んで・・・

自分は、IDE と一体化した高度にビジュアルなデバッガーが使いこなせてない。もちろんビジュアルじゃない奴も。
つまり、やっているのは printf() デバッグの類。
一時期は、そのことをデバッグの効率が悪いんじゃないかと恥じていたが、何かって言うとすぐブレイクポイントを設定して、試しに動かそうとしている若者の効率が思いのほか悪いのであまり気にならなくなった。
脇で見ていると「おいおい、もうちょっとソースを読んで、どこで何が起きているか考えて、あたりを付けてからブレイクポイントを設定しなよ」という感じ。

多分、仕事で最初にした仕事が Visual C++ とか、Eclipse とかだと、自分も
・適当にそれっぽいところをコピペ
・動かしてみる→うまく動かない
・デバッガで追って想像と違ったところを修正
の繰り返しみたいなのをしているんだろうなぁ。

仕事を始めて最初のころはそんなに便利なデバッグ環境はなかった。かといって、コンパイルにも時間がかかる。printf() デバッグと言っても、手軽にコードを挿入してコンパイルを繰り返すということはできず、まずはソースをよく読んで、どこらへんがポイントか考えてからじゃないと時間がいくらあっても足りない。コンパイル速度が速くなっても、闇雲にデバッガを使うよりソースを読むほうが効率よいのは変わらない。デバッガをあまり使わないでプログラミングする経験も必要じゃないかな、と思う。
そんなわけで、新人の頃デバッガが使えない環境でよかった。

あとあれだね、最近は Webプログラミングが主流で、そういう分野ではデバッガで処理を追うよりは HTTP Response に値を出力するほうが効率が良いというのもあるかと。

nice!(0)  コメント(4)  トラックバック(0) 

nice! 0

コメント 4

scot

gdbは便利ですよ。ポインタがあると
by scot (2009-03-25 02:11) 

nakagami

Visual C++ のデバッガもポインタを追って中身が見れます。
構造体の中も見れて途中で値を変更したりもできます。

でも、デバッガ使ってカッコよくデバッグするより、デバッガを使わないで動くほうがカッコいいですよ。

by nakagami (2009-03-25 08:41) 

discypus

自分は、だんだんソースを追うのが面倒になってきたので、カバレッジツール(Clover、Cobertura、gcc+lcov)にかけて、「あ、ここのif文が(500回trueになると思ってたのに)1000回に1回しかtrueになってない!」ってなことやってます。
by discypus (2009-03-29 18:36) 

nakagami

カバレッジを計測するツールでデバッグですか・・・
いろいろやり方はあるもんですね
by nakagami (2009-03-30 12:47) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0