マイクロソフトは2005年4月26日に次期開発ツールであるVisual Studio(VS)2005のBeta 2日本語版を公開しました。最終ベータ版として年内に出荷予定のVS 2005製品版の多くの機能を先取りしていると同時に,このソフトで開発したアプリケーションを実運用で利用できるライセンスを提供するなど,ベータ版といえども本格的なツールになっています。

 マイクロソフトは,2005年内を予定している次期開発ツールVisual Studio 2005(VS 2005)の出荷に先駆けて,2005年4月26日にBeta 2日本語版(以降,単にベータ2とします)を公開しました*1。ここでは,この最新プレビュー版に実装されているVS 2005の機能を紹介した後,VS 2005を使って簡単なアプリケーションを開発してみます。新たに加わった機能や,初心者にも優しい操作性を体験してください*2

ベータ2では最上位版と4種類のExpress版を提供

 ここでVisual Studio(以降,VS)について簡単に説明しておきましょう。VSは,米Microsoftが提供するアプリケーション開発/実行環境である .NET Framework上で動作するアプリケーション(「.NETアプリケーション」と呼びます)を開発するためのビジュアル開発ツールです。VS 2005は .NET Frameworkの次バージョンである .NET Framework 2.0*3 向けの .NETアプリケーションを開発できます。

 VSで開発できるアプリケーションは,ウィンドウを持つWindowsアプリケーション,Webブラウザをユーザー・インタフェースとするWebアプリケーション,ソフトウエア部品(カスタム・コントロール)*4など多岐にわたります。Windowsアプリケーションでは,スタンドアロン・アプリケーションはもちろん,リモートのデータベースに接続して大量のデータ操作を行う企業向け大規模システムも開発可能です*5

 ほかに,Windowsのサービスとして動作するアプリケーションや,コンソール・アプリケーションなどを開発できます。従来VBA(Visual Basic for Applications)マクロで機能拡張していたMicrosoft OfficeシリーズのExcelやWordに対して,C#やVisual Basicを使ってアドイン・モジュールを開発したり,Windows CEやPocket PCなどで動作するアプリケーションを開発することも可能になっています*6

表1●VS 2005 Beta 2日本語版は,大規模開発をターゲットにする上位エディションのTeam Suiteと,学習やホビーなど小規模開発をターゲットにするExpress Editionがある

 マイクロソフトが提供しているベータ2には,Team SuiteとExpress Edition(4種類)があります(表1[拡大表示])*7。Team SuiteはVS 2005のラインナップにおける最上位エディションで,テスト・ツールやOfficeアプリケーション,64ビット・アプリケーションなどの開発機能を備えます。開発に利用できる言語は,Visual Basic(VB),C#,C++/CLI*8 ,J#です。

 Express Editionは学習/ホビーや,企業の小規模アプリケーション開発向けという位置付けです。今回マイクロソフトが提供しているベータ版の4種類のExpress Editionのうち,Visual Web DeveloperはWebアプリケーション(ASP .NET 2.0)開発用で,そのほかはデスクトップ・アプリケーション開発用です。Visual Web Developerは開発言語としてVB,C#,J#を利用できますが,そのほかの3種類のExpress Editionはそれぞれ,VB,C#,C++/CLIのいずれかを単独でのみ使います。

 なお今回のベータ2で注目すべき点として,開発したアプリケーションを実運用できることが挙げられます。通常,ベータ版のソフトウエアは利用者による評価を目的に提供するため,そのツールで作成したプログラムを第三者に配布することを禁止する内容が使用ライセンスに含まれています。しかしVS 2005のベータ2では,「製品リリース時にはベータ2環境からリリース版への速やかな移行作業が行われるように準備しておく」などいくつかの注意事項を守ることで第三者への配布を許可する「Go-Liveライセンス」が提供されています*9

 この記事では,Team Suiteのベータ2に基づいて説明します。Express Editionとの違いについてはカコミ記事「小規模なアプリ開発ならExpress Editionでも十分」や注釈を参照してください。


表A●VS 2005 Beta 2日本語版における,Express Editionと,Team Suiteの機能比較

小規模なアプリ開発ならExpress Edition でも十分

 Visual Studio (VS)2005 のBeta 2 日本語版には大規模アプリケーション開発をサポートするTeam Suiteと,小規模なアプリケーション開発向けのExpress Editionがあります。Express Editionには,Visual C#(VC#),Visual Basic (VB),Visual C++(VC++)のそれぞれに対応する言語単体の製品と,VB,C#,J#を利用できるVisual WebDeveloper(VWD)があります*A。言語単体製品ではデスクトップ・アプリケーションの開発のみが可能で,VWDではWeb アプリケーション開発のみが可能です(表A[拡大表示])。また,Team Suite ,Express Edition のいずれでも,C++言語でASP.NETアプリケーションを開発することはできません*B

 Express Edition はTeam Suiteからいくつかの機能が削減されていますが,高機能なテスト・ツールや検証ツールが必要でない場合や,小規模で簡単なツール類の作成を行う場合であれば十分と言えるくらいの機能が搭載されています。筆者の場合,メインで使用するデスクトップ・パソコンにはTeam Suite をインストールしていますが,ノート・パソコンにはExpress Editionを入れています。簡単なコードの確認やちょっとしたアプリケーションの作成であれば,動作が軽いぶんだけExpress Editionのほうが使い勝手がいいと感じるほどです。

 同一環境に複数のExpressEditionをインストールすることも可能です。例えば,VC#とVBを組み合わせたり,VC++とVC#を組み合わせても,特に問題は発生しません。ただし,複数の言語製品をインストールしても,違う言語で開発した複数のプロジェクトを一つのソリューションでまとめて管理することはできません*C。したがって,言語をまたがるような開発を行うと生産性は格段と落ちてしまいます。

Team Suite とはここが違う

 表A はTeam Suite とExpress Edition の機能を比較したものです。Express Edition ではテスト機能が搭載されていないほか,いくつか縮小されている機能があります。

 以下に,筆者がVisual C#2005 ExpressEdition Beta 2日本語版(以降,VC#2005)とVisual Web Developer 2005 ExpressEdition Beta 2日本語版(以降,VWD2005)の二つを使ってみて気付いた点を挙げましょう。

リファクタリング機能の項目が少ない

 まず,アプリケーション開発のためのコンポーネントには違いがないようですが,コード・エディタの機能がTeam Suite より少なくなっています。目につくところでは,リファクタリングのメニューに「名前の変更」と「メソッドの展開」の2項目しか存在せず,プロパティ作成やメソッド引数の変更などの機能が使えなくなっています。

言語単体製品はローカルDB のみ利用可能

 VC#2005ではデータベースの接続機能がローカルのデータベース・ファイルに限定されています。VC#2005のデータベース接続では,データベース・ファイルをアプリケーションのローカル・フォルダにコピーするので,データベース・アプリケーションを配布する際には注意が必要です。

 一つは,データベース・ファイルが予想以上に膨らんでディスク容量を圧迫する可能性があること,もう一つは,アプリケーションの起動時にすべてのデータを読み込もうとするために時間がかかることです。ウィザードが作成するコードでは,フォームのロード時に全部のデータをメモリーにキャッシュする(型付きデータセット内に取り込む)ので,必要に応じてコードを修正するほうがいいでしょう。

(ハヤトエンタープライズ 諸農 和岳)