PR

VS 2005が備える新機能

表2●VS 2005の主な新機能(ベータ2に基づくため,製品版とは異なる場合がある)
図1●「スニペットの挿入」を選んだところ
図2●挿入した定型句はパラメータが強調表示される
図3●IntelliSenseによるコード補完。入力途中で候補が表示される
図4●カテゴリ別にコントロールが分けられたツールボックス。「−」をクリックするとカテゴリ内の項目がたたみ込まれ,「+」をクリックすると展開される
図5●エラー・メッセージが親切になったダイアログ
図6●実行中のインスタンスの内容を確認できる
図7●テストを管理・実行するテストマネージャ(上)とテスト結果(下)
図8●クラスからインスタンスを作成する際に現れるダイアログ
図9●図8で作成したインスタンスを使って,メソッドの動作をテストしているところ
 VSがVS 2005で備えるようになるプログラミングやデバッグの支援する機能は,VSの既存ユーザーにとってまさに「かゆいところに手が届く」と言えるものです。開発効率を重視するベテラン・プログラマにとって便利な,そして初心者プログラマにとって優しい役立つ機能が満載です(表2[拡大表示])。

初心者にも優しいプログラミング支援機能

 プログラムをたくさん書くようになると気付くのが,「定型句」を利用することの多さです。同じようなコードを何度も書くのは効率が悪いですね。そんなときに便利なのがコードスニペット機能です。VS 2005の統合開発環境(IDE)のエディタ上で右クリックして表示されるポップアップ・メニューで「スニペットの挿入」を選ぶと,簡単に定型句をコード・エディタに挿入できます(図1[拡大表示])。挿入されたコードはパラメータなどが強調表示されますから,変更すべき個所がすぐわかります(図2[拡大表示])。コードスニペットで使える定型句の定義ファイルはXMLで記述されているので,ユーザー自身が追加して登録できます。

 リファクタリング*10は,プログラムの振る舞いを変えずに,コードの中身(設計)を修正していく作業です。例えば,重複して現れる処理を関数やクラスとしてまとめたり,複雑な処理を単純なメソッドの組み合わせに書き換えたりします。VS 2005はこうした作業をある程度自動的に実行してくれるので,手作業でリファクタリングを行うことによるバグの混入を避けられます。具体的には,変数やメソッドの名前変更をはじめとして,クラス定義からインタフェース宣言を作成してくれるものまで様々なリファクタリング支援機能を用意しています*11

 IntelliSense(コード補完支援機能)に関しては,従来のVS が対応していないメソッドのoverrideやprivateの宣言,usingディレクティブ宣言といったキーワードに対しても補完機能が働くようになります(図3[拡大表示])。IntelliSenseは,プログラマがエディタにコードを打ち込んでいくとその途中で,候補になる命令の一覧,簡単な説明,引数の一覧などを表示する機能です。単語の単純なスペリング・ミスを防げるほか,簡単なヘルプ代わりにもなります。

 ほかに,ビジュアル開発で利用するコンポーネントが拡充されると同時に,使いやすくなることが挙げられます。VS 2005が搭載しているコンポーネントには,前バージョンのVS 2003に搭載されていた標準的なコンポーネントを拡張させたものが多くあります*12。VS 2005ではこれらのコンポーネントのアイコンを表示するツールボックスが,コンポーネントの機能ごとに分類されるので(図4),目的のコンポーネントを探しやすくなります。

単体テスト機能と自動配布機能を搭載

 VS 2005では,デバッグ機能も強化されます。一つは,例外メッセージ支援ダイアログです(図5[拡大表示] )。ダイアログには例外メッセージの意味に加えて,「どうすれば解決できるのか」が示されます。また,VS 2003ではデバッグ実行中に単純な変数の内容を確認できましたが,VS 2005ではさらにインスタンスの内容まで確認できるようになります(図6[拡大表示])。

 VS 2005 Team Suiteならではの機能として,テスト支援機能があります。これまでのように,VSのIDEにアドオンして動作させるサードパーティ製のテスト・ツールを用意する必要がなくなるのです。

 プロジェクトの単体テストを行うには,「テスト」メニューから「新しいテスト」を選択して現れるダイアログで「単体テストウィザード」を選択します。ウィザードが起動するとソリューションに含まれているプロジェクト一覧が表示されるので,テストの対象にするプロジェクトを選択します。ウィザードが作成したテストは,「テスト」メニューの「テストの管理と実行」で表示されるテストマネージャで行います(図7の上[拡大表示])。行いたいテストを一覧から選択し,「ツール」メニューの「テストの実行」を選ぶと,テスト結果が表示されるという仕組みです(図7の下[拡大表示])。

 クラス・プログラミングにおけるテスト支援機能もあります。クラスのデバッグをする作業では従来,クラスからインスタンスを作成するアプリケーションを別に用意して,そのアプリケーションからメソッドを呼び出したり,プロパティにアクセスして動作を確認する必要がありました。VS 2005ではIDE上でクラスのインスタンスを直接作成して,クラスのメソッドを呼び出すことが可能になりました。ソリューション・エクスプローラ(Ctrl+Alt+Lで表示)で,デバッグしたいクラスが含まれているプロジェクトをスタートアップ・プロジェクトに設定し,クラスビュー(Ctrl+Shift+Cで表示)で対象のクラスのノードを右クリックします。表示されるメニューから「インスタンスの作成」を選択すると図8[拡大表示]の「インスタンスの作成」ダイアログが表示されますから,名前欄に作成するインスタンスを参照する変数名をセットします。

 OKをクリックするとコンパイルが始まり,「オブジェクトテストベンチ」ウィンドウが開きます。作成したインスタンスはこのウィンドウに表示されており,右クリックで現れるメニューを使ってクラス・メソッドをテストする仕組みです(図9[拡大表示])。マウス・カーソルをインスタンス上に移動させたときに表示されるツール・ウィンドウを利用すればプロパティのテストができます。

 次に紹介するClickOnceは,アプリケーションの配布を容易にするための仕組みです。この仕組みを使うとWindowsアプリケーションをブラウザ経由でクライアント・パソコンにインストールできるようになるほか,アプリケーションが更新されると新バージョンをサーバーから自動的にダウンロードしてインストールするように設定できます。

 ClickOnceの利用によって,企業などで複数の人が使っているアプリケーションにおいて,アプリケーションが更新されるたびに新バージョンを配布したり,手作業でバージョンアップをする手間が省けます。ClickOnceで配布するアプリケーションは,サーバー上で動作するWebアプリケーションと異なり,オフライン状態でも利用できます。