検索
特集

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

Visual Studio 2005の日本語版ベータが、マイクロソフトからMSDN向けに提供開始された。次期Longhornを担う.NET Framework 2.0環境アプリケーションの統合開発、そして新たな構造の採用や効率化を高めた新版として注目される。早期レビューをお送りしよう。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

使いやすくなったデザイナ

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 それでは、VS2005がどのように変化したのかを具体的に見ていくことにしよう。改めて言うまでもなく、Visual Studioとは、ウィンドウやWebページをフォームとして構成し、デザイナ画面で各種コントロールを貼り付けて開発可能なGUIベースの開発環境だ。VS2005では、デザイナ画面に幾つかの機能が追加され、より使いやすくなった。

スマートタグの採用が容易さを高めている

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 通常、開発者は、フォームにコントロールを貼り付けたあと、そのコントロールに対して幾つかのプロパティを設定していくことになる。

 VS2005では、コントロールへのプロパティ設定を支援する機能として、スマートタグが用意された。スマートタグは、コントロール右上の三角マークをクリックすると、アクションウィンドウとして表示される。また、幾つかのコントロールは、フォームに配置しただけで自動的にアクションウィンドウを表示する。

 スマートタグには、そのコントロールに対する代表的な設定項目が用意されている。開発者は、その項目から選べば、まとめてプロパティを設定できるというわけだ(画面1)。


スマートタグは、すべてのコントロールでサポートされているわけではない。たとえば、LabelコントロールやButtonコントロールなどの基本的なコントロールには、用意されていない。

画面1■スマートタグ

 コントロールによっては、プロパティ設定だけでなく、必要なコードの自動生成をしたり、ウィザード起動するものもある。

 たとえば、データバインディングを行い、データベース内のデータを表示するコントロールでは、スマートタグから操作することで、必要な接続の作成からどの列の値をどのように取得するのかまで、ウィザード画面を通して設定が可能だ。

自動生成されるファイルは目的の別ファイルに分かれる

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 Visual Studio.NET 2003では、自動生成されるコードは、#Region〜#End Region(C#の場合には#region〜#endregion)で隠されており、開発中のソースファイルに記述された。つまり、ひとつのファイルに「開発者が記述したコード」と「自動生成されたコード」が混じり合っており、比較的可視性が悪く、また、開発者が誤って自動生成されたコードを変更すると、デザイナ画面が正しく動作しなくなるという恐れがあった。

 しかしVS2005では、自動生成されるコードは、「*.Designer.vb」(VBの場合)や「*.Designer.cs」(C#の場合)という別ファイルに記述されるようになった(画面2)。

 「開発者が記述したコード」と「自動生成されたコード」の2つのファイルは、最終的には、ひとつのクラスとして、まとめてビルドされる。この機能は、.NET Framework 2.0で搭載された、クラスを複数のファイルに分割できる「Partialタイプ」と呼ばれる機能による実装だ。


Webアプリケーション開発(ASP.NET)の場合には、*.Designer.vbや*.Designer.csファイルは作られず、ASP.NET自身が動的にビルドする。その詳細は後述する。

画面2■自動生成されるコードは分離される

 いままでVisual Studio.NET 2003を使っていた開発者で、特にコード中心に関わっていた人は、VS2005の場合プロパティ設定やコントロールのインスタンス設定などのコードが見あたらないため、最初は戸惑うかもしれない。しかし、ソリューションエクスプローラで「すべてのファイルを表示」を指定し、*.Designer.vbや*.Designer.csを参照すれば、自動生成されたコードを確認できる。


自動生成された*.Designer.vbや*.Designer.csファイルは、開発者が書き換えるべきではない。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る