次期Visual Studio 2010と.NET Framework 4.0の新機能:特集 マイクロソフトの開発ツール戦略(3/3 ページ)
2010年前半ごろのリリースが予想される次期Visual Studio 2010と.NET 4。それらに搭載予定の主な新機能や機能強化を紹介する。
■次期「Visual Studio 2010」の新機能(開発言語編)
●強化されるC++開発環境
次期VS 2010では各種開発言語が広範にサポートされるが、その中でもC++には大きく投資しており、特にIDE周りを改善している。例えば膨大な数のファイルを含むC++プロジェクトを取り扱うときのパフォーマンスやビルド時間など、数多くの点で改善がなされているということだ(今後もC++やMFCは引き続き強化される方向にあるようだ)。
●新しく追加される関数型言語「F#」
VS 2010ではC#、Visual Basic、Visual C++に続き、F#が標準搭載の開発言語として加わる。
F#は、関数型言語「ML」の影響を強く受けた、マイクロソフト独自の関数型プログラミング言語である。しかもオブジェクト指向プログラミングもサポートするので、マルチパラダイム言語ともいわれる。
次の画面は、F#言語によるプログラミング例と、その実行結果だ。
■次期「Visual Studio 2010」の新機能(設計機能編)
次に、アーキテクト向けの機能、設計時に必要な機能について紹介していく。
●各種UML図への対応強化
従来のVisual Studioではクラス図にしか対応していなかったが、VS 2010ではこれが強化され、次の各種UML図(UML 2.1.1ベース)に対応する。
- Activity Diagram(アクティビティ図)
- Component Diagram(コンポーネント図)
- Layer Diagram(レイヤー図)
- Logical Class Diagram(クラス図)
- Sequence Diagram(シーケンス図)
- Use Case Diagram(ユース・ケース図)
これらのUML図を実際に利用するには、まずモデリング・プロジェクトを作成する。
モデリング・プロジェクトの作成([新しいプロジェクト](New Project)ダイアログ)
[Modeling Projects]の[Empty Project]テンプレートから、モデリング・プロジェクトを作成する。
次に、[新しい項目の追加](Add New Item)ダイアログで、そのプロジェクトにUML図の項目を追加する。
例えば[Use Case Diagram](ユース・ケース図)を追加すると、次の画面のように[ツールボックス](Toolbox)から作図に必要な各種要素をドラッグ&ドロップで配置できる。
●[Architecture Explorer]ウィンドウ
VS 2010のIDEには、アーキテクチャ設計を可視化するための[Architecture Explorer]ウィンドウが追加される。
[Architecture Explorer]ウィンドウで[Visualize Code Relationships](コード依存関係の可視化)を実行すると、例えば次の画面のように、クラス間の依存関係をビジュアルに表示することができる。
このグラフィックスは「Directed Graph Markup Language」(以降、DGML)というXAMLライクな言語で記述されている。次の画面のように、独自に.dgmlファイルを記述して、DGMLによるグラフィックを描くこともできる。
■テスター向けのテスト・ツール“Camano”
“Camano”(コード名)は、主にVisual Studioを日常的に使わない(非開発者の)テスターが、Visual Studioプロジェクトのプログラムを簡単にテストするためのツールで、テスト・ケースの作成からテストの実行まで、一連のテスト・タスクが行える。実はこれもWPFで作られている。
■次期「ASP.NET 4.0」の新機能
●ASP.NET関連の新機能
ASP.NETについては、.NET 3.5 SP1ですでにさまざまな新機能を提供している。具体的にはデータをスキャフォールディング(scaffolding:足場)として、データ駆動でWebサイトを構築するための「Dynamic Data」、そしてREST形式のWebサービスとそのクライアントの構築をサポートする「Data Services」という機能だ。
これらに加え、ASP.NET 4.0では、Model/View/Controllerパターンを実現するフレームワーク「ASP.NET MVC」がサポートされる。
●ASP.NET AJAX関連の新機能
ASP.NET 4.0では、ASP.NET AJAXも機能強化される。REST形式のWebサービスと連携するための「ASP.NET Library for ADO.NET Data Services」や、クライアント側でデータを受け取り、データ駆動で動的にUIをレンダリングするテンプレート機能の「ASP.NET AJAX Templates」などが追加される予定だ。
ASP.NET AJAX TemplatesはXAMLのような書式で記述され、例えば次のようなコードになる(このコードでは、CompanyService.svcのWCFサービスから得たデータをUIにレンダリングする)。
<ul id="companyListView" class="float master sys-template"
sys:attach="dataview"
dataview:serviceuri="../CompanyService.svc"
dataview:query="GetCompanies">
<li>{binding CompanyName}</li>
</ul>
また、オープンソースのAjaxフレームワークのjQueryをサポートする。もちろんjQueryでもIntelliSenseが利用可能だ。
●ASP.NETの基本機能の強化
ASP.NET 4.0は、既存のASP.NET Webフォーム・モデルにも数多くの本質的な改善を施す。
例えば、ページに実際にレンダリングされるコントロールのIDを制御できるようになる。これによって、そのコントロールをハンドルするJavaScriptコードの記述がいまよりも容易になる(現状では自動的にIDが生成され、それを制御できない)。
また、.aspx/.htmlファイルなどを編集する(VS 2010の)HTMLエディタが、コード・スニペットに対応する。これにより、HTMLコードを素早く手入力できるようになると期待される。
●Webアプリの配置機能の強化
Webアプリを配置する機能も強化される。例えば、WebアプリやSQLデータベースなど(の実行に必要なものすべて)をパッケージ化して、リモート・サーバへワン・クリックで展開できるようになる。
また、テスト用の「Staging」と、製品用の「Production」のような異なるソリューション構成ごとに、別々の構成内容(接続文字列やWebサービスのエンドポイントなど)を「Web.<ソリューション名>.config」ファイル(「Web.Staging.config」「Web.Production.config」)に定義しておけば、パッケージ化するときに適用されるようになる。
以上がVS 2010と.NET 4の新機能である。特にVS 2010においては、過去のバージョンアップにはなかったような大きな進化を遂げている。製品版のリリースがいつになるのかはまだ明らかではないが、いまから非常に楽しみである。
Copyright© Digital Advantage Corp. All Rights Reserved.