毛嫌いするほどのものでもないと思う。だいたい、10万ループとかしているうちのあるデータがおかしくて、7万ループ目ぐらいにハングするといったような場合、まず、どのデータで落ちるのかログを取って見当をつけないと、デバッガでデバッグのやりようが無い。まさか、7万回もステップ実行するわけにゃいかんだろう。頭いい人は、ダンプファイルから推察でもするのかな?で、ハングできるデータを作成する?複合的な原因で落ちる場合にはどうすればいい?バグが再現できないだろう?
次に、昨今のソフトウェアは複雑で、この間書いたやつなんか、複数の拠点間で
- クライアント・アプリケーション
- クライアント・アプリケーションが利用するコンポーネント
- コンポーネントから別マシンのサーバにアクセスするサーバ・システム
- そのサーバ・システムからWAN越しにSOAP接続
- SOAPモジュールから、WANのセンター・サーバへ接続
- センター・サーバから、3.へ再配信するためのSOAP接続
- そのSOAPモジュールから3.へアクセス
ログでも取らないと、デバッグなんて無理です。しかも、ダンプとれるほど単純でもないし、スレッドが絡んでくる。1行たりともソースをいじるべからず!素晴らしいけど、俺には無理だ。
手っ取り早いログは、printf でしょう。テスト・ユニットでテストしてれば、こういう事態は減るんでようけどねぇ。それでもバグは混入する。
0 件のコメント:
コメントを投稿