次期Visual Studio 2010と.NET Framework 4.0の新機能特集 マイクロソフトの開発ツール戦略(3/3 ページ)

» 2009年01月09日 00時00分 公開
[一色政彦,デジタルアドバンテージ]
前のページへ 1|2|3       

■次期「Visual Studio 2010」の新機能(開発言語編)

強化されるC++開発環境

 次期VS 2010では各種開発言語が広範にサポートされるが、その中でもC++には大きく投資しており、特にIDE周りを改善している。例えば膨大な数のファイルを含むC++プロジェクトを取り扱うときのパフォーマンスやビルド時間など、数多くの点で改善がなされているということだ(今後もC++やMFCは引き続き強化される方向にあるようだ)。

新しく追加される関数型言語「F#」

 VS 2010ではC#、Visual Basic、Visual C++に続き、F#が標準搭載の開発言語として加わる。

 F#は、関数型言語「ML」の影響を強く受けた、マイクロソフト独自の関数型プログラミング言語である。しかもオブジェクト指向プログラミングもサポートするので、マルチパラダイム言語ともいわれる。

 次の画面は、F#言語によるプログラミング例と、その実行結果だ。

F#言語によるプログラミング例(Program.fsファイル)

■次期「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図の項目を追加する。

UML図の追加([新しい項目の追加](Add New Item)ダイアログ)

 例えば[Use Case Diagram](ユース・ケース図)を追加すると、次の画面のように[ツールボックス](Toolbox)から作図に必要な各種要素をドラッグ&ドロップで配置できる。

[Use Case Diagram](ユース・ケース図)のモデリング例

[Architecture Explorer]ウィンドウ

 VS 2010のIDEには、アーキテクチャ設計を可視化するための[Architecture Explorer]ウィンドウが追加される。

 [Architecture Explorer]ウィンドウで[Visualize Code Relationships](コード依存関係の可視化)を実行すると、例えば次の画面のように、クラス間の依存関係をビジュアルに表示することができる。

[Visualize Code Relationships](コード依存関係の可視化)の実行例

 このグラフィックスは「Directed Graph Markup Language」(以降、DGML)というXAMLライクな言語で記述されている。次の画面のように、独自に.dgmlファイルを記述して、DGMLによるグラフィックを描くこともできる。

[Architecture Explorer]ウィンドウと、DGMLによるグラフィック表現

■テスター向けのテスト・ツール“Camano”

 “Camano”(コード名)は、主にVisual Studioを日常的に使わない(非開発者の)テスターが、Visual Studioプロジェクトのプログラムを簡単にテストするためのツールで、テスト・ケースの作成からテストの実行まで、一連のテスト・タスクが行える。実はこれもWPFで作られている。

テスター向けのテスト・ツール“Camano”

■次期「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>

ASP.NET AJAX Templatesのコード例

 また、オープンソースのAjaxフレームワークのjQueryをサポートする。もちろんjQueryでもIntelliSenseが利用可能だ。

ASP.NETの基本機能の強化

 ASP.NET 4.0は、既存のASP.NET Webフォーム・モデルにも数多くの本質的な改善を施す。

 例えば、ページに実際にレンダリングされるコントロールのIDを制御できるようになる。これによって、そのコントロールをハンドルするJavaScriptコードの記述がいまよりも容易になる(現状では自動的にIDが生成され、それを制御できない)。

 また、.aspx/.htmlファイルなどを編集する(VS 2010の)HTMLエディタが、コード・スニペットに対応する。これにより、HTMLコードを素早く手入力できるようになると期待される。

HTMLエディタにおけるコード・スニペットの利用

Webアプリの配置機能の強化

 Webアプリを配置する機能も強化される。例えば、WebアプリやSQLデータベースなど(の実行に必要なものすべて)をパッケージ化して、リモート・サーバへワン・クリックで展開できるようになる。

Webアプリのパッケージ化が行えるプロジェクト・プロパティの[Publish]タブ

 また、テスト用の「Staging」と、製品用の「Production」のような異なるソリューション構成ごとに、別々の構成内容(接続文字列やWebサービスのエンドポイントなど)を「Web.<ソリューション名>.config」ファイル(「Web.Staging.config」「Web.Production.config」)に定義しておけば、パッケージ化するときに適用されるようになる。

ソリューションごとの「Web.<ソリューション名>.config」ファイル


 以上がVS 2010と.NET 4の新機能である。特にVS 2010においては、過去のバージョンアップにはなかったような大きな進化を遂げている。製品版のリリースがいつになるのかはまだ明らかではないが、いまから非常に楽しみである。

「特集 マイクロソフトの開発ツール戦略」のインデックス

特集 マイクロソフトの開発ツール戦略

前のページへ 1|2|3       

Copyright© Digital Advantage Corp. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

AI for エンジニアリング
「サプライチェーン攻撃」対策
1P情シスのための脆弱性管理/対策の現実解
OSSのサプライチェーン管理、取るべきアクションとは
Microsoft & Windows最前線2024
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。