特集:前編 Visual Studio 2005日本語版ベータ早期レビューdev .NET(4/6 ページ)

» 2004年08月25日 15時10分 公開
[大澤文孝,ITmedia]

使いやすくなったデバッグ機能−コードを編集してそのまま実行できるエディットコンティニュ

 VS2005では、デバッグ機能も充実している。Visual Studio.NET 2003では、いちどコードのプログラム実行を行うと、その後はコードの一部の変更でもいちど実行を止め、コード編集した後に実行し直す必要があった。

 VS2005は、デバッグで一時停止中ならば、コードを書き換え、停止することなく、実行続行できる「エディットコンティニュ」機能が加わった。

 エディットコンティニュ機能でコード変更できるのは、1. 停止中の場所(ブレークポイント)と同じブロック内、2. ブロックの制御の流れを変更しない、という2つを満たす場合のみである。このため大きな変更はできないが、実行時に気づいた小さなミスというのは多いものだ。十分に実用的な機能だといえるだろう。

例外ヘルパによるヒントの表示

 デバッグ中に例外が発生した場合、そこで実行が一時停止中となるが、この時、どのように修正すればよいのかというヒントが表示されるようになった(画面6)。

画面6■例外のヒント

 なお、VB.NETの場合には、例外の種類によっては、画面5に示した場合と同じく、例外を直すための修正候補も表示される。

メンバを展開して変数の中身を参照できる

 Visual Studio.NET 2003でも、デバッグで停止中に変数の近くにカーソルを合わせると、その変数の中身が表示されていた。しかし変数がオブジェクトを指している場合には、内容が表示されず、ほとんど役に立たなかっただろう。

 VS2005では、変数がオブジェクトを指しているときには、メンバを展開して表示できるようになった(画面7)。

画面7■メンバの展開表示

 画面7の状態では、値を参照するだけでなく、変更することも可能だ。また変数が文字列である場合には、「テキスト形式」「HTML形式」「XML形式」のいずれかで整形し、別ウィンドウで表示する機能も備えている。

簡単なテストに便利なオブジェクトテストベンチ機能

 クラスを設計している場合には、そのクラスに実装したメソッドが正しく動作するかのみをを調べたいことがある。そのための機能として、「オブジェクトテストベンチ」がサポートされた。

 この機能を使うには、クラスビューでインスタンスを作りたいクラスを右クリックし、[インスタンス作成]を選択する(画面8)。


スタティックメソッドを呼び出す場合には、インスタンスを作らずに、クラスを右クリックし、直接[スタティックメソッドの読み出し]を選択することでも実行できる。
画面8■インスタンスの作成

 するとオブジェクトテストベンチウィンドウが表示され、インスタンスが示される。このインスタンスを右クリックして、呼び出したいメソッドを指定すると、実行できるのだ。この際、メソッドの引数はダイアログボックスで問われる(画面9)。

画面9■オブジェクトテストベンチウィンドウでのメソッドの呼び出し−メソッドの呼び出し
画面9a■引数の設定

 メソッドに戻り値がある場合には、ダイアログボックスが表示され、それをオブジェクトテストベンチウィンドウ内にオブジェクトとして保存することもできる。呼び出し後は、オブジェクトテストベンチウィンドウ内のインスタンスにマウスカーソルを合わせることで、メンバ値を確認することも可能だ(画面10)。

画面10■メンバの値の確認−実行結果
画面10a■オブジェクトテストベンチ上で結果を確認する

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ