Visual Studio 2010 製品の主な強化点
このトピックでは、Visual Studio 2010 の重要な改良点のいくつかについて説明します。
Visual Studio IDE の機能強化
以下のセクションでは、Visual Studio IDE の機能強化について説明します。
新しい外観と動作
次の図は、Visual Studio 統合開発環境を示しています。
Visual Studio IDE
視覚的な改良点
IDE は、読みやすさを向上するために、再設計されました。 不要な線やグラデーションが取り除かれて、見やすくなりました。
複数のモニターのサポート
コード エディターやデザイン ビュー ウィンドウなどのドキュメント ウィンドウを、IDE のウィンドウの外部に配置できるようになりました。 たとえば、IDE の外部にコード エディターをドラッグして、デザイン ビュー ウィンドウと並べて表示できます。
コードをすばやく探索するためのツール
コード エディター
新しいコード エディターでは、コードが読みやすくなりました。 Ctrl キーを押しながらマウス ホイールをスクロールすることで、テキストを拡大できます。 また、Visual C# または Visual Basic でシンボルをクリックすると、そのシンボルのすべてのインスタンスが自動的に強調表示されます。詳細については、「Visual Studio 2010 エディターの新機能」を参照してください。
入力と同時の検索
新しい移動機能には、ファイル、型、およびメンバーに対する、入力と同時の検索機能が組み込まれています。 移動機能では、Camel 形式の組み合わせやアンダースコアを利用して、検索文字列に省略形を使用できます。 たとえば、"AOH" を使用して "AddOrderHeader" を検索できます。 詳細については、「方法 : オブジェクト、定義、および参照 (シンボル) を検索する」を参照してください。
呼び出し階層
Visual C# および Visual C++ では、呼び出し階層を使用して、呼び出し先のメンバーから呼び出し元のメンバーに移動したり、呼び出し元のメンバーから呼び出し先のメンバーに移動したりできます。 これは、オブジェクト指向コードを探索する場合に便利です。 詳細については、「呼び出し階層」を参照してください。
デバッグ
刷新された [スレッド] ウィンドウには、フィルター処理、呼び出し履歴の検索と展開、およびグループ化の機能が用意されています。 また、ブレークポイントを整理および検索して、他の開発者と共有できるようになりました。 詳細については、「Visual Studio デバッガーの新機能」を参照してください。
新しい並列スタック ウィンドウおよび並列タスク ウィンドウは、C++、C#、または Visual Basic で記述された並列コードの視覚化およびデバッグに役立ちます。 詳細については、「[並列スタック] ウィンドウの使用」および「[並列タスク] ウィンドウの使用」を参照してください。
IDE 機能のプロジェクト機能への対応
[参照の追加] やツールボックスなどの IDE の機能が、プロジェクトが対象とする .NET Framework や Silverlight のバージョンに対応するようになりました。 その結果、旧バージョンの .NET Framework を対象とするアセンブリの型、メンバー、およびコントロールは、IntelliSense に表示されず、バックグラウンド コンパイル エラーが発生します。 たとえば、プロジェクトが .NET Framework 2.0 を対象としていて、匿名型など、.NET Framework 2.0 がサポートしていない言語機能を使用した場合、IDE はコードをエラーとして扱います。 詳細については、「対象となる特定の .NET Framework のバージョンまたはプロファイルの指定」を参照してください。
テスト ファーストのサポート
Visual Basic または Visual C# では、新しい型やメンバーの定義が完了する前に、その使用方法を基にそれらのコード スタブを IDE によって生成できるようになりました。 その結果、テストを先に作成してから、テストのコンパイルに必要なコードを生成できます。 また、IntelliSense には、定義が完了していない型やメンバーを IntelliSense が自動的にコンパイルしない候補提示モードが追加されました。 詳細については、「使用法から生成」および「メンバーの一覧」を参照してください。
アプリケーション ライフサイクル管理
アプリケーション ライフサイクル管理のクライアント アプリケーションが、Express Edition を除いた Visual Studio のすべてのバージョンで使用できるようになりました。 アプリケーション ライフサイクル管理には、バージョン コントロール、作業項目トラッキング、ビルド オートメーション、チーム ポータル、レポートやビジネス インテリジェンス、アジャイル計画ブック、テスト ケース管理などの、ソフトウェア開発プロジェクトでの共同作業に必要なものがすべて含まれています。 アプリケーション ライフサイクル管理は Visual Studio 2010 に組み込まれており、クライアント アクセス ライセンス (CAL: Client Access License) が 1 つ含まれています。 必要に応じて、追加のクライアント アクセス ライセンスを購入できます。 詳細については、「Visual Studio 2010 のアプリケーション ライフサイクル管理に関する新機能」を参照してください。
コード生成とテキスト テンプレート
テキスト テンプレートの作成および使用は、Visual Studio のどのバージョンでも、他のコンポーネントを使用することなく行うことができます。Visual Studio 2010 では、前処理されたテキスト テンプレートが導入されたことで、アプリケーションからあらゆる種類のテキスト ファイルをより簡単に生成できるようになりました。 また、ビルド システムとの統合強化でコード生成のサポートが向上したことにより、ソース モデルが変更されても、生成されたソース コードは常に最新の状態になります。詳細については、「コード生成と T4 テキスト テンプレート」を参照してください。
スタート ページ
Visual Studio 2010 のスタート ページの外観および機能が新しくなりました。 タブ付きコンテンツ領域に、選択および分類された多様な学習用リソースへのリンクが用意されます。 これには、MSDN リソース、コミュニティ リソース、およびカスタマイズ可能なニュース フィードが含まれます。 [最近使ったプロジェクト] 一覧が強化されたことにより、一覧へのプロジェクトの追加や削除をマウスのシングルクリックで行うことができます。 また、拡張機能マネージャーから、カスタム スタート ページをインストールすることもできます。 スタート ページの詳細については、「スタート ページ」を参照してください。
拡張機能マネージャー
[ツール] メニューの [拡張機能マネージャー] をクリックして、Visual Studio の拡張機能を IDE から検索してインストールできます。 拡張機能マネージャーでは、コミュニティに公開されている拡張機能を Visual Studio Gallery (Visual Studio ギャラリー) の Web サイトからダウンロードおよびインストールできます。この際、ブラウザーを開く必要はありません。 また、インストールされた拡張機能のアンインストール、無効化、または再有効化を行うこともできます。 詳細については、「Visual Studio のツールおよび拡張機能のインストールと管理」を参照してください。
[新しいプロジェクト] ダイアログ ボックス
Visual Studio 2010 の [新しいプロジェクト] ダイアログ ボックスには、拡張機能マネージャーと同じ検索機能とインストール機能が含まれていますが、[新しいプロジェクト] ダイアログ ボックスではプロジェクト テンプレートと項目テンプレートだけが検索対象となります。 詳細については、「方法: 新しいテンプレートを検索してインストールする」を参照してください。
新しいヘルプ ビューアー
Visual Studio 2010 では、ヘルプ ビューアーが刷新されました。 強化された機能には、任意の Web ブラウザーを使用したオンラインまたはオフラインでのドキュメントの表示、必要に応じた最新のドキュメントのダウンロード、簡略化された目次を使用したドキュメントでの移動、強化されたフルテキスト検索アルゴリズムを使用した特定のコンテンツの検索、作業中のタスクに固有のコンテンツを特定するための効率化された F1 キー システムの利用があります。 詳細については、「Microsoft ヘルプ システム 1.1 ドキュメント」を参照してください。
Visual Basic 言語および C# 言語
Visual Studio 2010 では、Visual Basic 言語と C# 言語の機能の等価性がさらに進んでいます。 このため、どちらの言語も機能的には同じになるため、個人の好みによって言語を選択できます。 このセクションでは、C# と Visual Basic の新機能の一部を紹介します。
Visual Basic 言語
Visual Basic は、構文を短くして、コードをより短時間で作成できる新機能を備えています。 これらの機能には、自動実装プロパティ、暗黙の行連結、コレクション初期化子、単一ステートメントと複数ステートメントのラムダ式があります。 また、Visual Basic では型の等価性による簡素化された配置もサポートされるようになりました。 詳細については、「Visual Basic 2010 の新機能」を参照してください。
C# 言語
C# 言語の新機能は連携して Microsoft Office API を使用するプログラミングを簡素化します。 名前付き引数と省略可能な引数を使用することで、COM メソッドを呼び出すときに、省略可能なパラメーターのすべてに値を指定する必要がなくなりました。 動的サポートを使用すると、明示的な型キャストを使用しなくても、COM API からの戻り値など、あらゆるオブジェクトを参照できます。 インデックス付きプロパティと、オプションの ref 修飾子によって、COM インターフェイスへのアクセスが容易になります。 また、型の同値がサポートされるため、プライマリ相互運用機能アセンブリ (PIA: Primary Interop Assemblies) の型をアセンブリに直接埋め込むことによって、配置を簡素化できます。 詳細については、「Visual C# 2010 の新機能」を参照してください。
Visual F#
Visual Studio 2010 には新しい .NET Framework 言語である F# が含まれています。この言語では、関数型プログラミングに加えて、従来のオブジェクト指向プログラミングや命令型 (手続き型) プログラミングがサポートされます。 F# は、関数型プログラミングの簡潔で、表現力が豊かな、コンポジション式のスタイルと、.NET Framework のランタイム、ライブラリ、相互運用性、およびオブジェクト モデルを兼ね備えています。 つまり、両方のメリットを享受できます。 詳細については、「Visual F#」を参照してください。
Office 開発
Visual Studio 2010 には、プロジェクト テンプレートとツールが含まれており、Microsoft Office 2010 および 2007 Microsoft Office system を拡張するソリューションを作成するために使用できます。 Microsoft Office 2010 アプリケーション用に拡張されたリボン デザイナーがサポートされ、エンド ユーザーのコンピューターに Office プライマリ相互運用機能アセンブリを必要としない Office ソリューションを作成する機能が用意されるなど、Office プロジェクト向けの新しい開発機能を利用できます。 また、コンピューター上のすべてのユーザーに Office ソリューションを配置する機能など、Office プロジェクトに新しい配置機能を使用することもできます。 詳細については、「Visual Studio での Office 開発」および「Office 開発の新機能」を参照してください。
データ アクセスとモデリング
.NET Framework 4 では、ADO.NET Entity Framework が強化され、データ ドリブン アプリケーションに必要なコーディングや保守の作業量がさらに軽減されます。 Visual Studio 2010 では、ADO.NET Entity Data Model ツールの柔軟性やカスタマイズ オプションが向上したことにより、Entity Framework アプリケーションの作成が容易になりました。 詳細については、「ADO.NET Entity Framework」および「Entity Data Model ツール」を参照してください。
Web 開発
Visual Studio 2010 では、コード作成の高速化や Web 配置の簡素化などを図る機能強化が施されています。
コード作成の高速化
コード スニペット
Visual Studio 2010 には、より短時間でコードを作成できるよう、HTML のコード スニペット、JScript、および ASP.NET コントロールが用意されています。 コード スニペット マネージャーから、または IntelliSense から直接、スニペットを挿入できます。
JScript 用に大幅に改善された IntelliSense
IntelliSense の解析速度が 2 ~ 5 倍速くなりました。この結果、サイズの大きなスクリプト ライブラリの場合でも、事実上処理の遅延は発生しません。
IntelliSense はさまざまなコーディング スタイルに対応しています。ほぼすべてのライブラリで完全な IntelliSense のサポートが得られます。
IntelliSense では、ユーザーの入力に合わせて XML ドキュメント コメントが表示されます。
詳細については、「IntelliSense コード スニペットの作成と使用」を参照してください。
Web 配置の簡素化
Visual Studio 2010 を使用すると、1 回のクリックで Web アプリケーションをパッケージ化したり、公開したりできます。
Web パッケージ
Web 配置ツール (MSDeploy) を使用すると、インターネット インフォメーション サービス (IIS) Web サーバーに配置できるように Web アプリケーションをパッケージ化できます。 Web パッケージは、Web サーバーがアプリケーションをホストするために必要な要素がすべて含まれている .zip ファイルまたはフォルダー構造です。 これには、Web コンテンツ、IIS 設定、データベース スクリプト、コンポーネント、レジストリ設定、および証明書が含まれます。 Web 配置ツールは Visual Studio に統合されており、1 回のクリックで Web パッケージを作成できます。
ワンクリック発行機能
Web 配置ツール、FTP、フォルダーのコピー、または FrontPage Server Extensions を使用することで、サーバーへの発行を 1 回のクリックで実行できます。 Visual Studio には、発行方法、サーバー情報、ユーザー資格情報など、すべての設定情報が格納されます。
Web 構成の変換
配置中に web.config ファイルを変換するようにプロジェクトを構成できるようになりました。 プロジェクトを配置するときに、web.config の設定は、デバッグ サーバー、ステージング サーバー、および運用サーバーの設定に合わせて自動的に調整されます。
詳細については、「ASP.NET Web アプリケーション プロジェクトの配置の概要」を参照してください。
その他の追加機能
Visual Studio 2010 では、ASP.NET の新機能や MVC ベースの Web アプリケーションのサポートも追加されています。 詳細については、「ASP.NET 4 および Visual Web Developer の新機能」を参照してください。
WPF および Silverlight デザイナー
Visual Studio 2010 では、Windows Presentation Foundation (WPF) アプリケーションおよび Silverlight アプリケーションの作成を支援するため、さまざまなデザイナーの機能強化が施されています。
Silverlight のサポートの強化
Visual Studio 2008 では、Silverlight プロジェクトに対するデザイナーのサポートは、読み取り専用のプレビュー ウィンドウに限られています。 Visual Studio 2010 では、WPF プロジェクトと同様のデザイナー サポートが Silverlight でも用意されています。 たとえば、Silverlight プロジェクトで、マウスを使用してデザイナー画面上の項目の選択や配置ができるようになりました。 詳細については、「Visual Studio での Windows Presentation Foundation」を参照してください。
ドラッグ アンド ドロップによる WPF のデータ バインディング
プロジェクトにデータ ソースを追加したら、[データ ソース] ウィンドウから WPF デザイナー に項目をドラッグすることで、データ バインド Windows Presentation Foundation (WPF) コントロールを生成できます。 詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。
WPF オブジェクトの視覚化
Visual Studio 2010 のデバッガーには、WPF オブジェクトをより便利な方法で表示できる WPF ツリー ビジュアライザーが含まれています。 ウォッチ ウィンドウから任意の WPF オブジェクトに対してこのビジュアライザーを呼び出すと、そのオブジェクトがプロパティのツリーと一覧の形で表示されます。 詳細については、「方法: WPF ツリー ビジュアライザーを使用する」を参照してください。
Visual C++ 開発
Visual C++ の新機能のいくつかを次に示します。
ユーザー エクスペリエンスの向上
特に大きなアプリケーションの作業をする場合に Visual C++ IDE の応答性を高めるための、さまざまな機能強化が施されています。 IntelliSense エンジンなど、IDE コンポーネントの多くは、ファイルの解析や処理をバックグラウンドで実行するようになりました。 ヘッダー ファイルを変更したり、プロジェクト要素を切り替えたり、プロジェクトをデバッグからリリースに再構成したりするたびに、Visual Studio によってプロジェクト全体が再処理されるのを待つ必要がなくなりました。
新しい IntelliSense は、古いバージョンでは処理できなかった高度な C++ コード コンストラクターと条件付きで定義されているマクロを処理できるようになったため、精度が向上しています。
強化された IntelliSense エラーのレポート
Visual Studio の旧バージョンでは、あるコード行で IntelliSense のエラーが発生する理由が不明瞭な場合がありました。 Visual Studio 2010 では、IntelliSense の障害を引き起こす可能性があるコードが IDE で検出され、そのコードの下に赤い波線が表示されます。 また、IDE によって IntelliSense エラーが [エラー一覧] ウィンドウに表示されます。 [エラー一覧] ウィンドウでエラーをダブルクリックして、問題の原因となっているコードに移動できます。
#include オートコンプリート
IDE では、#include キーワードのオートコンプリートがサポートされるようになりました。 「#include」と入力すると、有効なヘッダー ファイルの一覧が作成されます。 入力を続けると、入力内容に基づいてリストがフィルター処理されます。 インクルードするファイルは随時選択できます。 これにより、正確なファイル名を知らなくても、ファイルを簡単に選択してインクルードすることができます。
特定のコンパイラおよびライブラリの対象化
Visual Studio 2010 では、Visual C++ プロジェクトの対象を Visual Studio 2010 のツールセット、または Visual Studio 2008 のツールセットに設定できます。 これにより、旧バージョンの Visual C++ のライブラリやコンパイラを引き続き使用しながら、Visual Studio 2010 での IDE の機能強化を利用できます。 ツールセットは、プロジェクト ファイル内のプロパティを 1 つ変更するだけで、切り替えられます。 詳細については、「[全般] プロパティ ページ (プロジェクト)」を参照してください。
MFC クラス ウィザード
Visual Studio 2010 には、MFC クラス ウィザードが再導入されています。 このウィザードは、ソリューション内の任意の場所から開始できます。 このウィザードを使用すると、個々のコード ファイルを手作業で変更せずに、クラス、メッセージ、および変数を追加できます。
ビルド関連の機能強化
Visual C++ プロジェクトでは、古い形式 (.vcproj) に変わって、新しいファイル形式 (.vcxproj) が使用されます。 プロジェクトのビルドには、VCBuild.exe ではなく、MSBuild.exe を使用します。 MSBuild は Microsoft のビルド プラットフォームで、より優れた診断機能、拡張性、統合などの利点を享受できます。 詳細については、「MSBuild (Visual C++)」を参照してください。
再起動マネージャーのサポート
Visual Studio では、MFC (Microsoft Foundation Classes) アプリケーションで再起動マネージャーをサポートするようになりました。 再起動マネージャーは Windows の機能で、開かれているドキュメントを定期的に保存することで、予想外にユーザーのデータが失われることを防ぎます。 アプリケーションが予期せず停止した場合、再起動マネージャーはそのアプリケーションを再起動し、自動的に保存されたデータを復元するかどうかをユーザーに確認します。 このためのコードを 1 行追加して再コンパイルするだけで、この機能を既存のアプリケーションに追加できます。 再起動マネージャーを使用すると、アプリケーションで意図しないデータ損失が発生する可能性を大幅に削減できます。 詳細については、「方法: 再起動マネージャーのサポートを追加する」を参照してください。
C++0x 言語の新機能
Visual C++ コンパイラには、ラムダ式、rvalue 参照、コンパイル時のアサーション、式の種類の探索、および自動の型推論という、C++0x 標準をサポートするための 5 種類の機能が導入されています。 詳細については、「Visual C++ 2010 の新機能」を参照してください。
並列プログラミング
スレッドやスレッド プールを直接操作しなくても、複数のプロセッサに処理を分散できるプログラムを作成できるようになりました。 Visual Studio 2010 には、C ランタイム ライブラリ (CRT: C Runtime Library) 用と .NET Framework 用の両方の並列コンピューティング ライブラリが用意されています。 また、Visual Studio デバッガーの新しいマルチスレッド ツールを使用することで、ネイティブ アプリケーションやマネージ アプリケーションをデバッグできます。 詳細については、Parallel Computing Developer Center (並列コンピューティング デベロッパー センター) の Web サイトを参照してください。
.NET Framework の並列プログラミング
.NET Framework 4 には、タスクとデータの並列化、PLINQ (Parallel Language Integrated Query) と呼ばれる LINQ to Objects の並列実装、および同期と同時実行を実現するためのさまざまな新しいデータ型をサポートするための新しいライブラリが用意されています。 これらのライブラリは、.NET Framework スレッド プールと統合されている新しいタスク スケジューラに依存します。 詳細については、「.NET Framework の並列プログラミング」を参照してください。
Visual C++ の並列プログラミング
C ランタイム ライブラリに、C++ の並列プログラミング構造である同時実行ランタイムが導入されました。 詳細については、「同時実行ランタイム」を参照してください。
並列プログラミング ツール
並列プログラミングをサポートするいくつかのツールの機能強化を次に示します。
デバッグ
デバッガーには、次の作業を実行できる、新しい [並列タスク] ウィンドウと [並列スタック] ウィンドウが追加されています。
アプリケーションで実行中のすべての Task インスタンスの状態の表示。
アプリケーションのすべてのスレッドの呼び出し履歴の表示。
デバッガーからコードへの移動。
詳細については、「並列診断ツール」を参照してください。
SharePoint 開発
Visual Studio 2010 では、SharePoint 開発が大幅に改善されています。 Visual Studio 内から SharePoint プロジェクトの作成、編集、デバッグ、パッケージ化、および配置とアクティブ化を実行できます。 サイトの配置は、F5 キーを押すだけです。 また、サーバー エクスプローラーまたはデータベース エクスプローラーを使用して、SharePoint サイトを参照することもできます。 詳細については、「Visual Studio での SharePoint 開発」および「SharePoint 開発の新機能」を参照してください。
クラウド コンピューティング ツール
Visual Studio 2010 では、簡単に Windows Azure Tools をインストールして有効にできます。 Windows Azure Tools を使用すると、Windows Azure を基にスケーラブルな Web アプリケーションと Web サービスを作成できます。 Windows Azure Tools を有効にするには、[新しいプロジェクト] ダイアログ ボックスで [クラウド サービス] をクリックします。 詳細については、「Windows Azure SDK」および「Windows Azure Tools for Microsoft Visual Studio」を参照してください。