Visual Studio アイコン Visual Studio 2015 リリース ノート

Important

このバージョンは サポートされなくなりました 最新のリリースをダウンロードするには、 https://visualstudio.microsoft.com/downloads/にアクセスしてください。

Visual Studio 2015 リリース

Visual Studio 2015 のすべてのバージョンのリリース ノートをご覧いただけます。

Visual Studio 2015 のダウンロード

Visual Studio 2015 は My.VisualStudio.com からダウンロードできます。 My.VisualStudio.com を使用するには、無料の Dev Essentials サブスクリプション、または Visual Studio サブスクリプションが必要です。

リリース ノート アイコン Visual Studio 2015

リリース日: 2015 年 7 月 20 日

このリリースでの新機能の概要

その他の変更点:

このリリースの新機能の詳細

クロスプラットフォーム モバイル開発用の Visual C++

これで、Visual Studio の 1 つのソリューション内で、複数のアプリ プラットフォームでプラットフォーム固有のコード以外のすべてを簡単に共有、再利用、ビルド、デプロイ、デバッグできるようになりました。 実行できる操作のほんの一部を次に示します。

  • Android ネイティブ アクティビティ アプリ用のテンプレート、または複数のプラットフォームと Xamarin ネイティブ Android アプリケーションで使用できる共有コード ライブラリ用のプロジェクトを作成します。

  • プラットフォーム固有の IntelliSense を使用して API を探索し、Android または Windows ターゲット用の正しいコードを生成します。

  • x86 または ARM ネイティブ プラットフォーム用にビルドを構成します。

  • 接続されている Android デバイスにコードをデプロイするか、テストに Microsoft のパフォーマンスの高い Android エミュレーターを使用します。

  • Visual Studio デバッガーでブレークポイントの設定、変数の監視、スタックの表示、コードのステップ実行を行います。

  • LogCat ビューアーを使用して、Android デバイスからメッセージ ログを表示します。 (Logcat は診断ツールであり、適切な edit->build->debug エクスペリエンスに不可欠です)。
    Logcat を使用して、次の操作を行います。

    • 検索バーを使用して特定のログ メッセージを検索します。
    • 自動スクロールの切り替えを使用すると、今後のログ メッセージを簡単に表示できます。
    • 前のログ出力メッセージをクリアします。
    • さまざまなログ レベルから選択します。
  • iOS プラットフォームを対象とする C++ コードを記述し、コード共有、クロスプラットフォーム IntelliSense、リファクタリング、ピーク定義などの高度なコード作成機能を利用します。 iOS のサポートはまだ進行中なので、近日中に詳細を確認してください。 バグについては、Connect を使用してフィードバックを送信できます。 さらに、Visual Studio IDE で Send-a-Smile を使用して、簡単な考えを送信できます。

また、次の項目も追加または更新しました。

  • Android API レベル 21 (Lollipop) のサポート。
  • Android のファイルサポートに基づく新しいテンプレート。これにより、外部ビルド システム (NDK- BUILD を含む) を使用できます。
  • すべてのテンプレートのプリコンパイル済みヘッダー (動的共有ライブラリ、スタティック ライブラリ、クロスプラットフォーム モバイル テンプレートを含む)。

Visual Studio Tools for Apache Cordova

以前は Visual Studio 用マルチデバイス ハイブリッド アプリと呼ばられていましたが、Visual Studio Tools for Apache Cordova を使用すると、1 つの単純な Visual Studio プロジェクトから Android、iOS、Windows、Windows Phone を対象とするクロスプラットフォーム アプリを簡単にビルド、デバッグ、テストできます。

Visual Studio 2015 RC では、以前の CDP で使用可能なすべての機能を利用できるようになりました。これには、次の機能強化が含まれます。

  • リプルの保存時の更新 - リビルド不要!
  • iOS シミュレーターまたは Mac 上の接続されているデバイスにアプリが展開されたときに、Visual Studio から iOS バージョンのアプリをデバッグする
  • 付属のリモート iOS ビルド エージェントのセキュリティが強化され、構成が簡略化されました
  • Git またはファイルシステムからプロジェクトにカスタム プラグインを追加するためのサポートを含むプラグイン管理エクスペリエンスの改善
  • 改善された config.xml デザイナーからプラットフォーム固有の構成オプションを選択する
  • Apache Cordova 4.0.0 のサポート。

次のように、お客様のフィードバックに耳を傾け、デバッグできるデバイスの数を増やしました。

  • jsHybugger を使用した Android 4.4、Android 4.3 以前
  • iOS 6、7、8
  • Windows ストア 8.1

その後、デバッグのサポートをさらに拡大しました。 Windows Phone 8.1 を対象とする Apache Cordova アプリをデバッグできるようになりました。

Windows Phone 8.1 エミュレーターまたは接続されているデバイスで、ブレークポイントの設定、変数の検査、コンソールの使用、その他のデバッグ タスクの実行を行うことができます。

Visual Studio Tools for Apache Cordova を使用したデバッグ

RC リリースの CLI 相互運用性 が追加されました。 Visual Studio の Cordova プロジェクトが、ディスク上のプロジェクト フォルダーに加えられた変更と同期されるようになりました。 サード パーティ製のツールや他のオペレーティング システムを使用している場合でも、Visual Studio に対して変更が反映される場合があります。 (Cordova プロジェクトの既定のファイル構造は、Apache Cordova コマンド ライン ツールで想定される構造に基づいているため、Apache Cordova CLI やそのフォルダー構造を必要とするその他のツールを簡単に直接操作できます)。

Visual Studio Emulator for Android

Visual Studio Emulator for Android は、Visual Studio (Xamarin または C++) のクロスプラットフォーム プロジェクトまたは Visual Studio Tools for Apache Cordova で使用できます。 異なるプラットフォームのエミュレーターを、Hyper-V の競合なしに切り替えることができます。 GPS/位置情報、加速度計、画面回転、ズーム、SD カード、カメラ、マルチタッチ、ネットワーク アクセスなど、さまざまなセンサーとシミュレーションをサポートしています。 また、Android バージョン 4.4 (KitKat、API レベル 19) と 5.0 (Lollipop、API レベル 21) もサポートしています。

Visual Studio Emulator for Android では、WiFi シミュレーションと、いくつかの異なるデバイス ハードウェア構成から選択する機能の両方がサポートされています。

RTM 用に次の新機能を追加しました。

  • 新しいプラットフォーム。 Jellybean (API 17) と Lollipop 5.1 (API 22) イメージを使用できます。
  • コマンド ライン インターフェイス。 コマンド プロンプトで %programfiles(x86)%\Microsoft Emulator Manager\1.0\emulatorcmd.exe に移動すると、UI なしでエミュレーター マネージャー (リスト、インストール、プロファイルの開始など) を操作できます。
  • zip ライブラリをドラッグ アンド ドロップします。 フラッシュ可能な zip をエミュレーターにドラッグ アンド ドロップすると、自動的に開梱とインストールが行われるようになりました。
  • [SD カード] タブ。[追加ツール] ウィンドウのこの新しいタブを使用すると、SD カードとの間でデータをプッシュおよびプルできます。
  • 独自に取得 エミュレーターは、Visual Studio をインストールしなくてもコンピューターにインストールできます。 エミュレーター マネージャーへのショートカットが [スタート] メニューに表示され、任意の開発ツール チェーンから起動して使用できます。

詳細については、「 Visual Studio Emulator for Android」を参照してください。

ユニバーサル Windows アプリ開発用 Visual Studio Tools

ユニバーサル Windows アプリ開発用の Visual Studio ツールは、Visual Studio のセットアップと統合されています。 これらのツールを使用すると、すべての Windows 10 デバイス (ポケット内の電話、バッグ内のタブレットまたはノート PC、デスク上の PC、IoT デバイス、すぐに、家の Xbox 本体、Surface Hub など) で動作する Windows アプリを構築できます。 さらに、これらのツールを使用して、Windows 10 API を利用する Windows デスクトップ アプリケーションを構築することもできます。 詳細については、「 Visual Studio Tools for Universal Windows Apps の新機能」を参照してください。

Windows アプリの開発の詳細については、 ユニバーサル Windows アプリWindows デベロッパー センターのガイドを参照してください。 最新の Windows ビルドと SDK の詳細については、 Windows Insider ポータルを参照してください。

Visual C++

このリリースでは、C++ コンパイラと標準ライブラリが更新され、C++11 のサポートが強化され、特定の C++14 機能が最初にサポートされています。 また、C++17 標準に含まれると予想される特定の機能に対する予備的なサポートも含まれています。

さらに、500 を超えるコンパイラのバグが修正されました。これには、 Microsoft Developer Community を通じて多くのお客様から送信されたものも含まれます。ありがとうございます。

言語機能

コンパイラを標準の C++ に近づけるために、次の新機能を追加しました。

  • 再開可能な関数 (resume/await) resume キーワードと await キーワードは、非同期プログラミングの言語レベルのサポートを提供し、再開可能な関数を有効にします。 現時点では、この機能は x64 ターゲットでのみ使用できます。 C++17 向けに提案 [N3858]
  • ジェネリック (ポリモーフィック) ラムダ式 ラムダ関数のパラメーター型を auto を使用して指定できるようになりました。コンパイラはこのコンテキストで auto を解釈し、クロージャの関数呼び出し演算子がメンバー関数テンプレートであり、ラムダ式での auto の各使用が個別のテンプレート型パラメーターに対応することを意味します。 C++14
  • 一般化されたラムダ キャプチャ式 init-capture とも呼ばれます。 ラムダの capture 句で、任意の式の結果を変数に割り当てることができるようになりました。 これにより、移動専用の型を値でキャプチャでき、ラムダ式でクロージャ オブジェクト内の任意のデータ メンバーを定義できます。 C++14
  • バイナリ リテラル がサポートされるようになりました。 このようなリテラルの先頭には 0B または 0b が付き、0 と 1 の数字のみで構成されます。 C++14
  • 戻り値の型の推論 複数の戻り値ステートメントを持つ関数や再帰関数など、通常の関数の戻り値の型を推定できるようになりました。 このような関数定義の前には、後続の戻り値の型を持つ関数定義のように auto キーワードが付けられますが、末尾の戻り値の型は省略されます。 C++14
  • decltype(auto)式を初期化するための auto キーワードを使用した型推論では、式から ref 修飾子と最上位レベルの cv 修飾子が削除されます。 decltype(auto) は ref 修飾子と cv 修飾子を保持し、推論または末尾の戻り値の型を持つ関数を導入することを除き、auto を使用できる任意の場所で使用できるようになりました。 C++14
  • Move 特殊メンバー関数の暗黙的な生成 条件が許可されると、移動コンストラクターと移動代入演算子が暗黙的に生成されるようになったため、コンパイラは C++11 の右辺値参照に完全に準拠します。 C++11
  • コンストラクターの継承 派生クラスでは、Base::Base を使用するステートメントを含めることで、基底クラスの基底クラスである Base のコンストラクターを継承することを指定できるようになりました。定義内で〘 派生クラスは基底クラスのすべてのコンストラクターのみを継承でき、特定の基底コンストラクターのみを継承する方法はありません。 派生クラスに同じシグネチャを持つコンストラクターがある場合、派生クラスは複数の基底クラスから継承できません。また、派生クラスは、継承されたコンストラクターと同じシグネチャを持つコンストラクターを定義することもできません。 C++11
  • 配置クエリとコントロール 変数の配置は、alignof() 演算子を使用してクエリを実行し、alignas() 指定子を使用して制御できます。 alignof() は、割り当てる必要がある型のインスタンスのバイト境界を返します。参照の場合は参照先の型の配置を返し、配列の場合は要素型の配置を返します。 alignas() は変数の配置を制御します。これは定数または型を受け取ります。ここで、型は alignas (alignof(type)) の短縮形です。 C++11
  • 拡張 sizeof sizeof() を使用して、クラスまたは構造体のメンバー変数のサイズをクラスまたは構造体のインスタンスなしで決定できるようになりました。 C++11
  • constexpr C++11 constexpr の部分的なサポート。 C++11 (部分)
  • User-Defined リテラル (UDL) 意味のあるサフィックスを数値リテラルと文字列リテラルに追加して、特定のセマンティクスを提供できるようになりました。 コンパイラは、サフィックス付きリテラルを適切な UDL 演算子の呼び出しとして解釈します。 C++11
  • スレッド安全な"自動" 静的変数 静的ローカル変数はスレッドに安全な形で初期化されるため、手動での同期が不要です。 初期化のみがスレッド セーフであるため、複数のスレッドによる静的ローカル変数の使用は、引き続き手動で同期する必要があります。 スレッド セーフな静的機能は、/Zc:threadSafeInit- フラグを使用して無効にして、CRT への依存関係を回避できます。 C++11
  • Thread-Local Storage thread_local キーワードを使用して、スレッドごとに独立オブジェクトを作成する必要があることを宣言します。 C++11
  • noexcept 演算子を使用して、式が例外をスローする可能性があるかどうかを確認できるようになりました。 noexcept 指定子を使用して、関数が例外をスローしないように指定できるようになりました。 C++11
  • インライン名前空間 名前空間をインラインとして指定して、その内容を外側の名前空間にホイストできるようになりました。 インライン名前空間を使用すると、既定で最新バージョンを公開するバージョン管理されたライブラリを作成できますが、以前の API バージョンは明示的に使用できます。 C++11
  • 無制限の和集合 共用体の型に、単純でないコンストラクターを持つ型を含めることができるようになりました。 このような共用体のコンストラクターを定義する必要があります。 C++11
  • 新しい文字型と Unicode リテラル UTF-8、UTF-16、UTF-32 の文字リテラルと文字列リテラルがサポートされ、新しい文字型char16_tとchar32_tが導入されました。 文字リテラルには U'a' のように u8 (UTF-8)、u (UTF-16)、U (UTF-32) のプレフィックスを付けることができますが、文字列リテラルには、さらに、生文字列に相当する u8R (UTF-8 raw-string)、uR (UTF-16 raw-string)、UR (UTF-32 raw-string) をプレフィックスとして付けることができます。 ユニバーサル文字名は、u'\u00EF'、u8"\u00EF is i"、および u"\U000000ef is I" のように Unicode リテラルとして自由に使用できます。 C++11
  • func 定義済みの識別子 func は、外側の関数の修飾されていない名前と非修飾名を含む文字列として暗黙的に定義されます。 C++11
  • __restrict __restrictを参照に適用できるようになりました。
  • Typename キーワード。 ユーザーは、テンプレート テンプレート パラメーターのクラスの代わりに typename を記述できるようになりました。 C++14
  • globals void 演算子 delete(void *, std::size_t) noexceptvoid 演算子 delete[](void *, std::size_t) noexcept をオーバーロードできるようになりました。 C++14
  • 桁区切り記号 これで、数値リテラルを一重引用符で囲んで読みやすくすることができます。 たとえば、int x = 1'000'000; です。 C++14
  • リテラル内のユニバーサル文字名 リテラル内のコード ポイントとして、"A" や改行文字などの基本的な文字を記述できるようになりました。 たとえば、const char *s = "\u0041\u000A";。 C++11
  • 非静的データメンバー初期化子が初期化子リストと共に正しく動作するようになりました。 C++11
  • 属性 関数を [noreturn] として指定して、関数が返されないことをコンパイラに通知できるようになりました (例外をスローすることはできますが)。 [非推奨]として、さまざまなコンストラクトを指定できるようになりました。 名前空間と列挙子で属性が許可されるようになりました。 C++11、C++14、および C++17
  • User-Defined リテラル (UDL) 数値リテラルと文字列リテラルは、リテラル データに対してカスタマイズされた計算を実行する意味のあるサフィックスを持つようになりました。 C++11
  • データ依存関係の順序付け属性 関数パラメーター、ラムダ パラメーター、または関数宣言を [[carries_dependency] として指定して、頻繁に読み取られますが、ほとんど変更されていない同時実行データ構造の最適化を改善できるようになりました。 C++11
  • かっこで囲まれた初期化リストを使用したautoの新しいルール copy-list-initializationsに対するauto推論は、std::initializer_listを推測するか、そうでない場合は型が不正となります。 C++17

Visual C++ ライブラリの機能

  • 標準ライブラリ型のUser-Defined リテラル (UDL)<chrono>、<string>、および <complex> ヘッダーは、便宜上 UDL 演算子を提供するようになりました。 たとえば、123ms は std::chrono::milliseconds(123)、"hello"s は std::string("hello") を意味し、3.14i は std::complex(0.0, 3.14) を意味します。
  • Null 前方反復子 標準ライブラリでは、コンテナー インスタンスを参照しない前方反復子を作成できるようになりました。 このような反復子は値初期化され、特定のコンテナーの種類で等しいと比較されます。 値初期化反復子と値初期化されていない反復子の比較は未定義です。 C++14
  • quoted() 標準ライブラリで quoted() 関数がサポートされ、引用符で囲まれた文字列値と I/O の操作が容易になりました。 quoted() では、引用符で囲まれた文字列全体が 1 つのエンティティとして扱われます (空白以外の文字の文字列が I/O ストリーム内にある場合)。さらに、エスケープ シーケンスは I/O 操作によって保持されます。 C++14
  • 異種連想検索 標準ライブラリでは、連想コンテナーの異種参照関数がサポートされるようになりました。 このような関数は、型がkey_typeに相当する限り、key_type以外の型による検索を有効にします。 C++14
  • 整数シーケンスのCompile-Time 標準ライブラリでは、パラメーター パックの操作を容易にし、特定のテンプレート プログラミング パターンを簡略化するために、コンパイル時に評価できる整数値のシーケンスを表すinteger_sequence型がサポートされるようになりました。 C++14
  • exchange() 標準ライブラリで std::exchange() ユーティリティ関数がサポートされ、オブジェクトに新しい値が割り当てられ、古い値が返されるようになりました。 複合型の場合、exchange() は、移動コンストラクターが使用可能な場合に古い値のコピーを回避し、一時的な値または移動された場合は新しい値のコピーを回避し、変換代入演算子を利用して任意の型を新しい値として受け入れます。 C++14
  • Dual-Range equal()、is_permutation()、mismatch() 標準ライブラリでは、2 つの範囲を受け入れる std::equal()、std::is_permutation()、std::mismatch() のオーバーロードがサポートされるようになりました。 これらのオーバーロードは、さまざまな長さのシーケンスを処理します。 C++14
  • get<T>() 標準ライブラリで get<T>() テンプレート関数がサポートされ、タプル要素の型によるアドレス指定が可能になりました。 タプルに同じ型 get<T>() の 2 つ以上の要素が含まれている場合、そのタプルはその型でアドレス指定できません。ただし、他の一意に型指定された要素は引き続きアドレス指定できます。 C++14
  • tuple_element_t標準ライブラリでは、typename tuple_element<I、T>::type のエイリアスである tuple_element_t<I、T> 型エイリアスがサポートされるようになりました。 これにより、テンプレート プログラマは、 <type_traits>の他のメタ関数型エイリアスと同様に便利です。 C++14
  • ファイル システム "V3" 技術仕様 含まれているファイル システム技術仕様の実装が最終バージョンに更新されました。
  • 最小アロケーター 標準ライブラリでは、最小限のアロケーター インターフェイスがサポートされるようになりました。注目すべき修正には、std::function、shared_ptr、allocate_shared()、およびbasic_stringが含まれます。 C++11
  • <chrono> chrono 型のhigh_resolution_clockとsteady_clockが修正されました。 C++11
  • constexpr は、C++ 標準ライブラリ全体で実装されています。 C++11、C++14、および C++17
  • quick_exit() quick_exit() を呼び出してマルチスレッド プロセスをよりクリーンに終了し、at_quick_exit() でクリーンアップ コードを実行できるようになりました。 C++11
  • void_t では、高度なテンプレート メタプログラミングがサポートされています。 C++17
  • unique_ptr<T[]>への変換が、安全であることがわかっている場合に許可されるようになりました。 C++17
  • invoke() を使用すると、関数オブジェクト、メンバー関数へのポインター、およびデータ メンバーへのポインターを均一な構文で呼び出すことができます。 C++17
  • noexcept 標準ライブラリは、特定の関数での noexcept の使用をクリーンアップしました。 C++17
  • uncaught_exceptions() は、処理中の例外の数を報告します (1 を超える可能性があります)。 C++17
  • reference_wrapper は簡単にコピーできるようになりました。 C++17
  • map/unordered_map で insert_or_assign()/try_emplace() がサポートされるようになりました。 C++17
  • size()empty()data() のメンバー以外の関数が提供されるようになりました。 C++17
  • auto_ptrrandom_shuffle()、および 古い <機能> 機械は C++11/14 で非推奨となり、C++17 では削除されました。 Visual Studio 2015 では既定でそれらが提供されますが、プロジェクト全体で_HAS_AUTO_PTR_ETCを0に定義すると、その定義が削除されます。
  • unique_ptr 割り当てが正確に制限されるようになりました。 C++17
  • bool_constant は、integral_constant<ブール>のエイリアスとしてサポートされるようになりました。 C++17

Visual C++ の高速ビルド

  • リンク時の増分コード生成 (LTCG) これで、編集の影響を受けるプロジェクトの部分のみをリビルドするように LTCG に指示できます。 これにより、LTCG を使用するアプリケーションのリンク時間が大幅に短縮される可能性があります。 /LTCG:増分リンカー スイッチを使用して、この機能をアクティブにします。
  • スタティック ライブラリのインクリメンタル リンク 他のコード モジュールによって参照される静的ライブラリへの変更は、増分リンクされるようになりました。
  • /Debug:FastLink は、新しい PDB 作成手法を使用してリンク時間を大幅に短縮します。
  • リンク時間を短縮するために、リンカーにアルゴリズムの機能強化が行われました。
  • テンプレートの負荷の高いコードをより迅速に構築できる機能強化が行われました。
  • 高速プロファイルガイド付き最適化 (PGO) インストルメンテーション PGO では、ゲームおよびリアルタイム システム用の新しい軽量インストルメンテーション モードが導入されました。 /GENPROFILE および /FASTGETPROFILE リンカー スイッチを通じて利用できるその他の新機能と共に、PGO を使用する際のコード品質とビルド速度のバランスを取ることができます。
  • オブジェクト ファイルのサイズの縮小 コンパイラと C++ 標準ライブラリの機能強化により、オブジェクト ファイルと静的ライブラリが大幅に小さくなります。 これらの機能強化は、従来、リンカーによって冗長コードが削除されているため、動的にリンクされたライブラリ (DLL) または実行可能ファイル (EXEs) のサイズには影響しません。

Visual C++ のパフォーマンスとコード品質

  • 自動ベクター化の機能強化。 制御フローのベクター化 (if-then-else)、/O1 でコンパイルするときのベクター化 (サイズの最小化) が改善され、並列 STL のサポート、より多くの範囲ベースの for ループのベクター化、#pragma ループ (ivdep) のサポートなど、ベクター コードの全体的な品質が向上しました。
  • スカラー最適化の機能強化。 ビット テスト操作のコード生成、制御フローのマージと最適化 (ループ if スイッチング)、その他のスカラー最適化 (std::min および std::max のコード生成の向上など) が追加されました。
  • プロファイル ガイド付き最適化 (PGO)。 PGO には、改善された参照セット、優れたデータ レイアウト機能、以前に行われたインライン化、速度とサイズ、レイアウトの決定を再利用する機能など、多くの機能強化が行われました。
  • 制御フロー ガード (CFG)。 新しいセキュリティ機能を追加しました。プロジェクトに新しいオプションを追加するだけで、Visual C++ コンパイラによってバイナリに追加のセキュリティ チェックが挿入され、コードのハイジャックの試行を検出するのに役立ちます。 チェックが発生すると、ハイジャック犯があなたのデータやPCに損害を与える前に、コードの実行が停止します。

コマンド オプションが更新されました。 以前のリリースと同じように /d2guard4 スイッチを使用する代わりに、/guard:cf を使用する必要があります。

Visual C++ の生産性、デバッグ、診断

次の機能を使用して、C++ のリファクタリング サポートを追加しました。

  • シンボル名の変更 シンボルのすべての出現箇所を新しい名前に変更します。
  • 関数の抽出 選択したコードを独自の関数に移動します。 このリファクタリングは、 Visual Studio ギャラリーの Visual Studio の拡張機能として使用できます。
  • 純粋仮想を実装する クラスまたは構造体によって継承された純粋仮想関数の関数定義を生成します。 複数および再帰的な継承がサポートされています。 継承クラス定義からこのリファクタリングをアクティブ化して、継承されたすべての純粋仮想関数を実装するか、基底クラス指定子から、その基底クラスからのみ純粋仮想関数を実装します。
  • 宣言または定義の作成 既存の定義から宣言を生成するか、既存の宣言から既定の定義を生成します。 このリファクタリングには、既存の宣言または定義、または電球インジケーターからアクセスします。
  • 関数定義の移動 ソース コードとヘッダー ファイルの間で関数の本体を移動します。 関数のシグネチャからこのリファクタリングをアクティブにします。
  • 未加工の文字列リテラルに変換する エスケープ シーケンスを含む文字列を生文字列リテラルに変換します。 サポートされているエスケープ シーケンスは、\n (改行)、\t (タブ)、' (一重引用符)、" (二重引用符)、および ? です。 (疑問符)。 文字列内の任意の場所を右クリックして、この機能をアクティブにします。

Visual C++ での Program Database (PDB) の機能強化には、次のものがあります。

  • 特に大規模なソリューションでは、ソリューションのスキャン速度が向上しました。
  • [定義へ移動] などの操作は、新しいソリューションを初めて開いたときに最初のソリューション スキャン中を除き、ソリューション スキャン中にブロックされなくなりました。

IntelliSense 読みやすさの向上: 複雑なテンプレートのインスタンス化と typedef がパラメーター ヘルプと quickinfo で簡略化され、読みやすくなりました。

C++ でのデバッガーの視覚化

管理とソース管理の統合を容易にするために、Natvis デバッガーの視覚化を Visual Studio プロジェクトに追加します。 プロジェクトに追加された Natvis ファイルは、プロジェクト外の Natvis ビジュアライザーよりも評価が優先されます。 詳細については、「 デバッガーでネイティブ オブジェクトのカスタム ビューを作成する」を参照してください

RC 以降、Android で C++ のデバッグ中に Natvis ファイルを使用できます。 デバッガーには、多くの一般的なテンプレートの視覚化が含まれており、C++ プロジェクトに追加されるカスタム ファイルの読み込みがサポートされています。

ネイティブ メモリ診断

  • メモリ診断セッション (Alt + F2) を使用すると、ネイティブ アプリケーションのライブ メモリ使用量を監視できます。
  • メモリ スナップショットは、 アプリケーションのヒープ コンテンツの瞬間的なイメージをキャプチャします。 ヒープ状態の違いを調べるには、2 つのメモリ スナップショットを比較します。 アプリケーションを停止した後、各インスタンスのオブジェクトの種類、インスタンス値、および割り当て呼び出し履歴を表示します。

ウォッチ ウィンドウとイミディエイト ウィンドウから C++ 関数を呼び出すときのデッドロックの検出と回復が改善されました。

コンパイラ診断の改善 - コンパイラは、疑わしいコードに関する強化された警告を提供します。 新しい警告が追加されました (影付き変数や不一致の printf 書式指定文字列など)。 既存の警告メッセージが明確になりました。

/Wv フラグ - 特定のコンパイラバージョン XX.YY.ZZZZ 後に導入された警告は、/Wv:XX.YY.ZZZZ フラグを使用して無効にすることができます。 その他の警告は、/Wv フラグを使用して指定された警告に加えて、特に無効にすることができます。

最適化されたコードのデバッグのサポートの強化 - /Zi、/Zo、または /Z7 フラグが有効になっているコードをデバッグします。

Visual C++ グラフィックス診断

グラフィックス診断は、次の機能で改善されました。

  • 連続キャプチャ 1 つのキャプチャで最大 30 個の連続するフレームをキャプチャします。
  • プログラムによるキャプチャ フレーム キャプチャをプログラムで開始します。 プログラムによるキャプチャは、Present を呼び出さないプログラムでコンピューティング シェーダーをデバッグする場合や、レンダリングの問題を手動でキャプチャするのが難しいが、実行時にアプリの状態からプログラムで予測できる場合に特に便利です。
  • 拡張グラフィックス イベント一覧 新しい描画呼び出しビューが追加され、描画呼び出しで編成された階層内でキャプチャされたイベントとその状態が表示されます。 描画呼び出しを展開して、描画呼び出し時に現在のデバイスの状態を表示し、各種類の状態をさらに展開して、その値を設定するイベントを表示できます。
  • Windows Phone 8.1 のサポート グラフィックス診断では、電話エミュレーターまたはテザリングされた電話での Windows アプリのデバッグが完全にサポートされるようになりました。
  • グラフィックス フレーム分析 このツールは、キャプチャされたフレームのパフォーマンス測定を収集します。さらに、さまざまなテクスチャ手法を適用した場合のパフォーマンスへの影響に関する分析情報を提供する、定義済みの一連の実験を実行します。 フレーム分析では、ハードウェアからパフォーマンス カウンターも収集されます。
  • グラフィックス分析専用 UI 新しい Visual Studio Graphics Analyzer ウィンドウは、グラフィックス フレームを分析するための専用ワークスペースです。
  • シェーダーの編集と適用 アプリを再実行せずに、キャプチャされたログでのシェーダー コードの変更の影響を表示します。
  • Tools-Options->Graphics 診断で>を構成します。
  • フレームをキャプチャして再生するためのコマンド ライン ツール
  • DirectX 12 のグラフィックス診断のサポート。 Visual Studio グラフィックス診断ツールで、DirectX 12 アプリケーションでのレンダリングの問題のデバッグがサポートされるようになりました。

新しい GPU 使用率ツール

Visual Studio 2015 の GPU 使用率ツールを使用して、DirectX アプリケーションの GPU 使用率を把握できます。 アプリケーションがライブで実行されている間は、フレーム時間、フレーム レート、GPU 使用率のグラフを使用できます。 さらに、詳細な GPU 使用状況データを収集して分析することで、このツールは個々の DirectX イベントの CPU と GPU の実行時間に関する分析情報を提供するため、CPU または GPU がパフォーマンスのボトルネックであるかどうかを判断するのに役立ちます。

Visual C++ マネージド テスト プロジェクトのデバッグを有効にする

このリリースの新機能: Visual C++ マネージド テスト プロジェクトのデバッグを有効にするには、"ツール |オプション |デバッグ |[全般] ウィンドウで、[モジュールの読み込み時に JIT 最適化を抑制する (管理のみ)]オプションをオンにします。

C# および Visual Basic

言語機能

このリリースでは、C# と Visual Basic のいくつかの新しい言語機能を使用して、日常のコードの定型句と煩雑さを軽減し、より宣言型のプログラミングスタイルを促進し、2 つの言語をさらに近づけます。 たとえば、型とメンバーの宣言と null チェックの構文が改善されています。 さらに、ローカル変数は式内で宣言でき、await は catch ブロックと finally ブロックで使用できます。 これらの機能の多くは、以前のリリースの 2 つの言語のいずれかに対してのみ実装されていますが、最終リリースでは両方の言語で使用できるようになります。

  • Nameof は、パラメーター、メンバー、型などの名前を文字列として取得するリファクタリング セーフな方法を提供します。
  • null 条件演算子を使用すると、メンバーとインデクサーへのアクセスと呼び出し中に組み込みの null チェックを取得できます。
  • 文字列補間: 文字列補間は、書式指定文字列に式を挿入する文字列テンプレートを簡潔に記述する方法を提供します (C# プレビューのみ、RTM では VB と C# の両方)。
  • メソッドgetter のみのプロパティなど、ラムダと同様に、本体として 1 つの式を使用できるようになりました。
  • 自動プロパティ は初期化子を持つ可能性があり、セッターを必要としません。
  • インデックス初期化子: オブジェクト初期化子内で、新しいオブジェクトの特定のインデックスを初期化できるようになりました。 C# のみ。
  • 例外フィルター を使用すると、例外を確認し、特定の catch ブロックでキャッチするかどうかを決定できます。
  • 静的クラスに句を使用すると、静的メンバーがスコープに直接取り込まれるため、クラス名のプレフィックスを付けずに WriteLine() や Sqrt() などを呼び出すことができます。
  • Await は catch ブロックと finally ブロックでの使用が可能になり、非常に面倒な回避策が不要になります。

コード エディター UI と編集

C# と Visual Basic のコード エディター UI と編集エクスペリエンスは、.NET コンパイラ プラットフォーム ("Roslyn") 上に構築された新しいエクスペリエンスに置き換えられました。 現在お気に入りの機能の多くは改善または改良されています。

  • 電球は、一般的なコードの問題の修正やコードのリファクタリングなど、Visual Studio エディターで実行するすべてのクイック アクションの新しいホームです。 コードに問題がある場合は、電球にそれらの問題の修正候補が表示されます。 すべてのリファクタリング操作が電球に移動されました。 電球には、Ctrl + <dot> キーを押していつでもアクセスできます。

電球に候補が表示される

  • 2 つの新しいコア リファクタリング操作があります。 インライン一時変数ローカルの導入です。 新しい ローカル 導入機能の例を次に示します。

ローカル電球の導入

インライン一時変数の例を次に示します。

インライン一時電球

  • Visual Basic のリファクタリング サポートが初めて追加され、電球にも移動されました。
  • 名前の変更も改善されました。これで、名前を変更する識別子のすべてのインスタンスが強調表示され、エディターで直接すべてのインスタンスに新しい名前を一度に入力できます。

インライン名の変更の機能強化

  • 入力時にライブ コード分析と自動修正を取得できます。対象となる Microsoft プラットフォームと NuGet パッケージに対する特定のコード対応ガイダンスを使用できます。 プレビューでは、他のパッケージと同様に、NuGet ギャラリーから取得した NuGet パッケージを介してライブ FxCop アナライザーを追加する必要があります。 特定のライブ ルールをプルすると、同等のビルド後 FxCop ルールが置き換えられるため、重複ヒットは発生しません。 Azure 用コード分析パッケージの例を次に示します。

Azure 用コード分析パッケージの例

  • C# と Visual Basic の式エバリュエーターが書き直されました。 機能強化には、ウォッチ ウィンドウとイミディエイト ウィンドウでの LINQ 式とラムダ式のサポートが含まれます。

F#

言語とランタイムの機能

F# 4.0 には、ギャップを埋め、さらに多くの機能を "機能" させ、主要な領域のパフォーマンスを向上させる、多数の新しい言語とランタイムの追加が含まれています。 コンパイラとランタイム全体でも、多数のバグと小さなパフォーマンス最適化が実装されています。

  • コンストラクターをファースト クラス関数として 使用できるようになりました。クラス名は、そのクラスのコンストラクターを表す、ファーストクラスの関数値として使用できるようになりました。
  • 'mutable' と 'ref' の統一 - 'mutable' 構文をあらゆる場所で使用できるようになりました。キャプチャされた値は、必要に応じてコンパイラによってヒープ ベースの 'ref' 値に自動的に変換されます。 開発者がこれが発生したときに通知を受け取る場合に備えて、新しいオプションの警告が追加されました。
  • 指定されたメソッドの静的パラメーター - 型プロバイダーによって提供される個々のメソッドで静的パラメーターを指定できるようになりました。
  • null 非許容型 - 標準の [<AllowNullLiteral(false)>] を使用して、指定された型を null 非許容として指定できるようになりました。
  • メソッド引数の暗黙的な引用符 - Expr<型のメソッド引数> を透過的に自動引用符で囲み、引数値とそれを生成した式の AST の両方を渡すようになりました。
  • 拡張プリプロセッサ文法 - ブール演算子 ||、&&、および ! #if プリプロセッサ ディレクティブで、() グループ化と共に使用できるようになりました。
  • 測定単位の有理指数 - 測定単位は、電気工学などの物理科学で使用される場合がある有理指数をサポートするようになりました
  • 'printf' スタイルの関数を使用したメジャー値の単位の簡易使用 - 単位化された数値は、単位を削除しなくても、数値 printf 書式指定子とシームレスに機能するようになりました。
  • 高次元の .NET 配列のサポート - ランク 5 以上の .NET 配列を F# コードで使用できるようになりました。
  • オブジェクト初期化子の拡張プロパティ - Settable 拡張プロパティをオブジェクト初期化子式で割り当てることができるようになりました。
  • 複数のジェネリック インターフェイスインスタンス化からの継承 - F#で作成されたクラスは、複数のジェネリック インターフェイスのインスタンス化を実装するクラスから継承できるようになりました。
  • 'StructuredFormatDisplayAttribute' の複数のプロパティ - [<StructuredFormatDisplay>] で指定した %A 書式に複数のプロパティを含めることができるようになりました。
  • 先頭の 'Microsoft' 名前空間 (省略可能) - FSharp.Core からモジュールと名前空間を使用または開くとき、先頭の "Microsoft" は省略可能になりました。

F# ランタイム

  • 配列、List、Seq モジュールの正規化 - コレクション処理関数のセットは、配列、List、Seq モジュール (特定の型には適用できない API を除く) 全体で一貫性があり、各型に対して専用の最適化された実装が使用されるようになりました。
  • 最適化された構造ハッシュ - プリミティブ型のジェネリック ハッシュ比較のパフォーマンスを向上させるために大幅な最適化が行われ、'distinct' や 'groupBy' などの API によるパフォーマンスが向上しました。
  • 最適化された非構造比較演算子 - FSharp.Core.Operators.NonStructuralComparison モジュールを開き、既定の F# 構造比較演算子をより効率的な非構造演算子に置き換えることができます。 これにより、カスタム演算子の実装 (特に値型) を使用して型を処理するときに、パフォーマンスが大幅に向上する可能性があります。
  • F# リストのスライス構文 - F# リストでは、サブリストを取得するためのスライス構文がサポートされるようになりました。
  • System.Net.WebClient' の非同期拡張機能 - WebClient 拡張機能 AsyncDownloadFile と AsyncDownloadData を使用できるようになりました。
  • 非同期スタック トレースの改善 - F# の非同期計算で発生する例外に、よりわかりやすいスタック トレースが含まれるようになり、問題の診断が容易になりました。
  • Option の相互運用 API - Null オブジェクトと System.Null 許容値との間で変換するために、さまざまな新しい API が Option モジュールに追加されました。
  • System.Decimal 値の引用符アクティブ パターン - 定数リテラル System.Decimal 値を引用符で照合するためのアクティブ パターンが組み込まれるようになりました。

F# IDE の機能

Visual F# ツールには新しいエクスペリエンスと機能と、いくつかのバグ修正が含まれています。

  • スクリプト のデバッグ - F# スクリプトを Visual Studio デバッガーで直接デバッグできるようになりました。
  • プロジェクト テンプレートのアセンブリ メタデータ - すべての F# プロジェクト テンプレートに、共通のアセンブリ レベルのメタデータ属性を含む AssemblyInfo.fs ファイルが含まれるようになりました。
  • 統合された最新状態確認 - Visual Studio でビルドする際に、F# プロジェクトが「最新の状態」であるかどうかを正しく報告するようになりました。
  • オブジェクト初期化子での IntelliSense 補完 - オブジェクト初期化子式では、Ctrl + Space を使用して、設定可能なプロパティの IntelliSense 補完がサポートされるようになりました。
  • 名前付きパラメーターの IntelliSense 入力候補 - メソッドとコンストラクターの呼び出しで、Ctrl + Space を使用した名前付きパラメーターの IntelliSense 自動補完がサポートされるようになりました。
  • フォルダーのサポートに関するバグ修正 - Visual F# ツールはプロジェクト内のフォルダーを直接サポートしていませんが、多くのプロジェクト システムのバグが修正され、Visual F# Power Tools 拡張機能によって追加されたフォルダーのサポートが改善されました。

.NET Framework 4.6

.NET Framework の最新バージョンは 4.6 です。 ASP.NET、Windows Communication Foundation、Windows Presentation Foundation など、アプリケーション開発テクノロジで多数の機能強化が行われます。 ネットワーク、.NET Framework 基本クラス ライブラリ、共通言語ランタイムにも変更があります (新しい 64 ビット JIT コンパイラ、ユニバーサル Windows プラットフォーム アプリのネイティブ コード コンパイル、アセンブリ ローダーの機能強化など)。

変更の例としては、次のようなものがあります。

  • ASP.NET モデル バインド メソッドがタスクを返すようになりました。
  • ADO.NET では、SQL Server 2016 Community Technology Preview 2 (CTP2) で使用できる Always Encrypted 機能がサポートされるようになりました。
  • Windows Presentation Foundation (WPF) では、タッチのサポートが強化され、HDPI レイアウトが改善されます。
  • Windows Communication Foundation (WCF) では、SSL 3.0 と TLS 1.0 に加えて、SSL バージョン TLS 1.1 と TLS 1.2 がサポートされるようになりました。
  • .NET Framework 基本クラス ライブラリには、ガベージ コレクション、タスク ベースの非同期パターン、および暗号化の機能強化が含まれています。 また、SIMD 対応ベクター型と互換性スイッチのサポートも追加され、開発者はライブラリの新しい制限によってサポートされる機能に対して統一されたオプトアウト メカニズムを提供できます。

.NET Framework に追加された新機能の詳細と完全な一覧については、「.NET Framework の新機能」を参照してください。

エンティティ フレームワーク

このリリースには、Entity Framework 7 のプレビュー バージョンと、主にバグ修正とコミュニティへの貢献を含む Entity Framework 6 の更新プログラムが含まれています。

Entity Framework 7

Entity Framework の新しいバージョンでは、新しいプラットフォームと新しいデータ ストアが可能になります。 Windows Phone、Windows ストア、ASP.NET 5、従来のデスクトップ アプリケーションで Entity Framework を使用できるようになりました。 このバージョンのフレームワークでは、リレーショナル データベースだけでなく、Azure Table Storage や Redis などの非リレーショナル データ ストアもサポートされています。 これには、新しい ASP.NET 5 つのプロジェクトにインストールされている EF7 ランタイムの早期プレビューが含まれています。 EF7 の詳細については、「 EF7 の概要」を参照してください。

エンティティ フレームワーク 6.x (Entity Framework 6.x)

このリリースには、Entity Framework 6.1.3 バージョンのランタイムとツールが含まれています。 Entity Framework 6.1.3 には、バグ修正とコミュニティへの貢献が含まれています。 Entity Framework 6.1.3 に含まれる変更の一覧を確認できます。

Entity Framework 6.1.1 ランタイムは、このリリースのさまざまな場所に含まれています。

  • EF ランタイムがまだインストールされていないプロジェクトで Entity Framework Tools を使用して新しいモデルを作成すると、ランタイムがインストールされます。
  • ランタイムは、選択したプロジェクト テンプレートに応じて、新しい ASP.NET プロジェクトにプレインストールされます。

Visual Studio IDE

共有アカウント

このリリースの新機能では、Visual Studio で追加したユーザー アカウントを他のアプリ (Blend for Visual Studio や Microsoft Test Manager など) と共有できます。

共有プロジェクト

このリリースでは、Visual Basic、C#、および JavaScript 用の空の共有プロジェクトを作成するための新しいテンプレートを使用できます。 これらの共有プロジェクトは、いくつかのプロジェクトの種類で参照できるようになりました。

  • フレーバーのない VB/C# プロジェクト (コンソール アプリ、クラス ライブラリ、Win フォーム アプリなど)
  • Windows ストア 8.1 および Windows Phone 8.1 (VB/C#/JavaScript)
  • Windows Phone Silverlight 8.0/8.1 (VB/C#)
  • WPF と PCL

[共有プロジェクト] タブの [参照マネージャー] を使用して、共有プロジェクトへの参照を追加または削除できます。共有プロジェクト参照はソリューション エクスプローラーの [参照] ノードの下に表示されますが、共有プロジェクトのコードとアセットは、メイン プロジェクトにリンクされたファイルであるかのように扱われます。

コード エディター (すべての言語)

ファイル内の検索 は、後続の結果を以前の結果に追加できるようにすることで改善されました。蓄積された結果を削除できます。

次のジェスチャに対して、Visual Studio エディターでタッチサポートを利用できるようになりました。

  • スクロール (標準および拡張スクロール バーのエディター画面でのタップアンドドラッグ)
  • ピンチズーム
  • エディターの余白をタップして行全体を選択し、単語をダブルタップして選択します
  • 長押しによるエディター コンテキスト メニューの呼び出し

ダブルタップ ジェスチャが低いズーム レベルでは常に信頼できるとは限らないという点で、タッチに関する 1 つの問題を認識しています。 新しいタッチ サポート、特に見つかる可能性のある問題に関するフィードバックをお聞かせください。

XAML デザイナー

Visual Studio のお客様は、使用のコンテキスト内で外部リソース ディクショナリに格納されているテンプレートとスタイルを編集できるようになりました。 このエクスペリエンスは、ピークを使用して XAML デザイナーで実際の現場リソース編集を有効にするようにさらに改良されました。

カスタム ウィンドウ レイアウト

[ウィンドウ] メニューの [ウィンドウ レイアウトの保存] をクリックしてカスタム ウィンドウ レイアウトを保存し、[ウィンドウ] メニューの [ウィンドウ レイアウトの適用] をクリックしてカスタム レイアウトを適用できるようになりました。 事前に割り当てられたキーボード ショートカットを使用してレイアウトを適用することもできます。 最初の 9 つのレイアウトには、Ctrl + Alt + 1 から Ctrl + Alt + 9 までのキーボード ショートカットもあります。 実行できるその他のタスクには、[ウィンドウ] メニューの [ウィンドウ レイアウトの管理] をクリックして、レイアウトの削除、名前の変更、並べ替えなどがあります。

高解像度アイコン

Visual Studio では、デバイスが 100% DPI のスケーリングで実行されている場合、コマンド バー、ツール ウィンドウ ツール バー (標準)、メイン メニュー、エラー一覧、ステータス バー、一部のソリューション エクスプローラー プロジェクトの種類の高解像度アイコンがサポートされます。

UI の機能強化

  • メニューが ALL CAPS スタイルではなくタイトル ケース スタイルで表示されるようになりました。
  • [Visual C++ プロパティ ページ] ダイアログの [構成] と [プラットフォーム] ドロップダウンの値が変更され、プロパティ ページが閉じて再度開かれたときに最後に選択されたユーザーを記憶するように変更されました。

Visual Studio フィードバック

Send a Frown 機能を向上させ、速度低下、ハング、クラッシュを報告するためのツールを強化しました。 ファイルを添付したり、フィードバックにタグを付けたりして、問題をより適切に説明できるようになりました。 さらに、検出可能性を向上させるために 、フィードバック アイコンとメニュー項目を更新しました。

Visual Studio の機能拡張

  • Visual Studio 拡張機能で高解像度アイコンを使用できるようになりました。
  • アドインは、このリリースではサポートされなくなりました。 Visual Studio アドイン プロジェクト テンプレートとアドイン マネージャーを削除しました。 アドインを VSPackage 拡張機能に変換することをお勧めします。 詳細については、「 FAQ: アドインを VSPackage 拡張機能に変換する」を参照してください。
  • Visual Studio SDK がインストールされていない場合でも、機能拡張プロジェクトを開くようになりました。
  • さらに、Visual Studio のセットアップを使用して Visual Studio SDK をインストールできます。Web サイトにアクセスする必要がなくなりました。 これを行うには、[プログラムの追加と削除] メニューの [Visual Studio 2015] を右クリックし、[変更] を選択します。 [Visual Studio のセットアップ] ダイアログで、[共通ツール] の [Visual Studio 拡張機能ツール] をオンにします。
  • 拡張プロジェクトの移植性と共有を強化するために、Visual Studio SDK リファレンス アセンブリの NuGet バージョンを使用できます。 詳細については、「 Visual Studio Extensibility によって発行されたアセンブリ」を参照してください。

Visual Studio の機能拡張の詳細を確認します。

ブレンド

Blend for Visual Studio 2015 が再設計され、美しい XAML アプリを作成するためのユーザー インターフェイス開発エクスペリエンスが向上しました。 Blend には、Visual Studio と一貫性のある洗練された新しい外観、ソリューションとチーム エクスプローラーのサポート、Blend と Visual Studio の間のより良いワークフローを容易にする強化されたファイルの再読み込みエクスペリエンスがあります。 また、生産性を高めるために Blend の最も望んでいる機能も提供しました。

  • ステートメントの入力候補とソースへのナビゲーションを提供する XAML IntelliSense を使用して、XAML をより効率的に記述できるようになりました。
  • XAML コントロールとリソースは、XAML ピーク定義で使用されるコンテキスト内で表示および編集することもできます。
  • 実行中のアプリで UI の問題を見つけて修正する作業が、XAML デバッグ用の UI ツールを使用して簡単になりました。これにより、ライブ ビジュアル ツリーとツリー内の要素のプロパティを調べることができます。
  • NuGet のサポートが追加されたので、Blend で NuGet パッケージを管理できます。
  • また、アニメーション ワークスペース機能を、さまざまなウィンドウ レイアウトを作成してマシン間でローミングするために使用できる、より強力な同期レイアウト機能に置き換えられました。
  • マウスではなくキーボードを使用するパワー ユーザー向けに、Blend デザイナー ウィンドウにキーボードを完全にアクセスできるようにしました。
  • 最後に、ユニバーサルにアクセス可能なソフトウェアの作成に向けた Microsoft の継続的な取り組みの一環として、Blend は全画面表示リーダーであり、ハイ コントラストアクセス可能になりました。

Blend に追加された新機能の詳細については、 プレビュー のブログ投稿を参照してください。

デバッグと診断

アタッチ時のマネージドエディットアンドコンティニュー

RC の時点で、.NET アプリケーションにアタッチするときと環境変数を編集して続行できます。

complus_forceencは、ターゲット プロセスで 1 に設定されます。

ブレークポイントの構成

新しい [ブレークポイント設定] ウィンドウでは、ブレークポイントの条件とアクションを指定できます。 このウィンドウには、ブレークポイントの条件とアクションに対する IntelliSense のサポートが強化されています。 元に戻す (Ctrl + Z キー) を使用すると、削除されたブレークポイントを復元できます。

デバッガー ウィンドウでのラムダ式

C# および Visual Basic のウォッチ ウィンドウ、イミディエイト ウィンドウ、その他のデバッガー ウィンドウでラムダ式を使用できるようになりました。

PerfTips

PerfTips 機能を使用すると、デバッガーでブレークポイントとステップを設定するときに、エディターでコードを直接実行するのにかかった時間を確認できます。

GPU 使用率

GPU 使用率ツールを使用して、DirectX アプリケーションの GPU 使用率を把握できます。 フレーム 時間、フレーム レート、GPU 使用率のグラフは、アプリケーションがライブで実行されるときに使用できます。 さらに、詳細な GPU 使用状況データを収集して分析することで、このツールは個々の DirectX イベントの CPU と GPU の実行時間に関する分析情報を提供できるため、CPU または GPU がパフォーマンスのボトルネックであるかどうかを判断するのに役立ちます。

C++ デバッガーの機能強化

C++ デバッガーをブレークポイントで停止すると、結果を計算するためにコードを実行できます (ウォッチ ウィンドウとイミディエイト ウィンドウにデータを表示するなど)。 呼び出された関数がデッドロックしていることをデバッガーが検出すると、問題の解決が試みられます。

C++ デバッガーがプロセスを起動すると、デバッグの通常のヒープではなく、通常のヒープを使用してメモリが割り当てられるようになりました。 これにより、デバッグの開始時間が短縮されます。

XAML 用 UI デバッグ ツール

実行中の WPF アプリケーションのビジュアル ツリーと、ツリー内の任意の要素のプロパティを検査する Live Visual Tree と Live プロパティ エクスプローラーという 2 つの新しいツールが追加されました。 これらのツールを使用すると、実行中のアプリ内の任意の要素を選択し、最終的なプロパティ、計算されたプロパティ、レンダリングされたプロパティを表示できます。 ツールには、次のものも含まれます。

  • ライブ ビジュアル ツリー。 これで、デバッグ セッション中に実行中のアプリケーションの完全なビジュアル ツリーを表示できるようになりました。 ライブ ビジュアル ツリーは、Visual Studio で F5 キーを押すか、実行中のアプリケーションにアタッチするときに使用できます。 ライブ ビジュアル ツリーを使用すると、実行中のアプリケーション内の要素を選択して、Live プロパティ エクスプローラーで検査できます。 子孫数が表示され、ソース情報が使用可能な場合は、要素の定義のファイルと場所をすぐに見つけることができます。
  • ライブ プロパティ エクスプローラー。 この新しいツールを使用して、実行中のアプリケーション内の任意の要素に設定されているプロパティを、設定されているスコープ別にグループ化して調べます。 デバッグ セッション中にこれらのプロパティを変更し、実行中のアプリケーションでその変更をすぐに確認できます。

プロパティが互いにどのようにオーバーライドするかを分解し、勝利する動作を特定することは、設計時に困難であることが判明する可能性がある。 これで、XAML 用の新しい UI デバッグ ツールを使用して、実行時にこれらの検査を実行できるようになりました。

(Windows ストア アプリのサポートは、今後の更新プログラムでリリースされる予定です)。

XAML 用 UI デバッグ ツール(全画面表示)

例外の設定

デバッガーの例外設定は、[例外設定] ツール ウィンドウを使用して構成できます。 新しいウィンドウは非モーダルであり、パフォーマンス、検索、フィルター機能の向上が含まれています。

例外の設定 - [スローされたときに中断] ウィンドウ

タイムライン ツール

新しいタイムライン ツールでは、WPF および Windows ストア 8.1 アプリケーションのパフォーマンスを検査、診断、および向上させるために使用できる、アプリケーションが使用するリソースのシナリオ中心のビューが提供されます。

パフォーマンスと診断ハブにあるタイムライン ツールは、アプリケーションが UI フレームの準備とネットワークとディスク要求のサービスに費やした時間を示します。 このツールは、アプリケーションの読み込みやページ読み込みなどのシナリオのコンテキストで実行されます。

新しいタイムライン ツール

診断ツール

デバッグを開始するときに表示される新しい [診断ツール] ウィンドウが追加されました (F5 キーを押します)。 [診断ツール] ウィンドウには、次の機能があります。

  • イベント (IntelliTrace を使用)
    イベント (IntelliTrace を使用) を使用すると、デバッグ セッション中に収集されたすべてのデバッガーの中断、出力、および IntelliTrace イベントにアクセスできます。 データは、タイムラインと表形式ビューの両方として表示されます。 2 つのビューは同期され、相互に操作できます。
  • メモリ使用量
    メモリ使用量ツールを使用すると、デバッグ中にアプリのメモリ使用量を監視できます。 また、ネイティブ メモリとマネージド メモリの詳細なスナップショットを取得して比較し、メモリの増加とメモリ リークの原因を分析することもできます。
  • CPU 使用率
    CPU 使用率ツールを使用すると、デバッグ中にアプリケーションの CPU 使用率を監視できます。
    (このツールは、Visual Studio 2015 のプレビュー リリースで使用できた CPU 時間のパフォーマンスヒントに代わるものです)。

以前のリリースでは、[診断ツール] ウィンドウで次のプロジェクトの種類とデバッグ構成がサポートされました。

  • マネージド WPF、WinForms、およびコンソール プロジェクト
  • ネイティブ Win32、コンソール、MFC プロジェクト
  • ASP.NET 4 で IIS Express のみを使用する
  • ローカルで実行されているマネージドまたはネイティブの Windows ストア プロジェクト
    (JavaScript を使用している、または電話で実行している Windows ストア プロジェクトはサポートされていません)

RC リリースの [診断ツール] ウィンドウには、次の機能強化があります。

  • Visual Studio 内の任意のウィンドウの場所に移動でき、デバッグ セッション間の場所とサイズを記憶します
  • Debug -> Attach to process を使用してプロセスにアタッチすると、単一のプロセスのデータが表示されます。
  • IIS で実行されているプロジェクト ASP.NET デバッグするときに表示されます
  • 5 つのプロジェクト ASP.NET デバッグするときに表示されます
  • リモート Windows デスクトップ デバイスで実行されているアプリをデバッグするときに表示されます
  • デバッグを停止した後にメモリ スナップショットを表示できます
  • デバッガー イベント (中断イベントのみ) は、ネイティブ プロジェクトのデバッグ時に使用できます

RC リリースには、次の新機能も追加されました。

マイ コードのみ。 F5 キーを押してデバッガーを起動すると、コードのみが表示され、フレームワークやその他のコードからのノイズなしでパフォーマンスの問題や例外を理解できます。 IntelliTrace のこの新しいコード フィルター機能では、システム コードが抑制され、ユーザー コードのみが公開されるため、"自分のコードのみ" を簡単にデバッグできます。

ネットワーク診断ツール。 この新しいネットワーク診断ツールは、Windows ストア アプリをビルドするときのネットワーク関連の問題と、Windows Phone から Xbox および Windows ストアまで、すべての Windows 10 デバイスで実行されるユニバーサル アプリを診断するのに役立ちます。

ネットワーク診断ツールは、HTTP 要求と応答ヘッダー、要求と応答のペイロード、Cookie、詳細なタイミング情報など、アプリの HTTP ネットワーク操作に関する情報を記録します。 ネットワーク診断ツールは、次のような一般的なシナリオに関する質問への回答にも役立ちます。

  • 認証に関連する問題 (リソースにアクセスできない理由など)
  • キャッシュ関連の問題 (リソースの最新バージョンを取得しない理由など)
  • アプリの一般的なタスクを実行するときにダウンロードされるバイト数
  • リソースにアクセスしてダウンロードするときのボトルネックはどこにあるか

ネットワーク ツールにアクセスするには、Visual Studio 2015 で [診断ツール] ウィンドウを開きます。 [ デバッグ ] メニューの [ デバッグなしで診断ツールを開始] を選択します。 または、Alt キーを押しながら F2 キーを押します。

デバッグ中に表示される診断ツール ウィンドウに対して、次の機能強化が行われました。

  • アプリからのイベントは、IntelliTrace イベントトラックと出力イベント トラック間で分割されるのではなく、1 つの IntelliTrace イベント トラックに表示されるようになりました。
  • プログラムの実行中にアプリのイベントが表示されるようになりました。イベントを表示するために "すべて中断" を押す必要がなくなりました。
  • コードで設定したトレースポイントのデバッグ履歴をアクティブにして、ソース コードと呼び出し履歴を表示できるようになりました。
  • ガベージ コレクションとスナップショット イベントをメモリ使用量グラフに表示できるようになりました。これにより、マネージド ガベージ コレクションがいつ発生したか、およびメモリ使用量ツールを使用してスナップショットを取得したタイミングを確認できます。

ASP.NET

ASP.NET 4.6

ASP.NET モデル バインドでは、Task 戻りメソッドがサポートされます

ASP.NET モデル バインド メソッドで、以前までTaskを返却していたものはサポートされておらず、構成されている場合は実行時に例外をスローしました。 このようなメソッドを使用してアプリケーションをデプロイすると、これらのメソッドが正しく実行されるようになりました。 この変更は、特に .NET 4.6 以降を対象とするアプリケーションにのみ適用されます。

ASP.NET アプリケーションでの .NET コンパイラ プラットフォーム ("Roslyn") の有効化

任意の ASP.NET 4.6 プロジェクトで C# と VB の新しい言語機能を使用できます。 VS 2015 の Web フォーム テンプレートには、 Microsoft.CodeDom.Providers.DotNetCompilerPlatform パッケージがプレインストールされています。

HTTP/2 のサポートを追加する

Windows 10 および .NET Framework 4.6 では、 HTTP/2 のサポートが追加されました。 HTTP/2 の主な目標は、ブラウザーから Web サイトへの 1 つの接続を使用して、パフォーマンス、待機時間、およびネットワーク使用量を向上することです。

Entity Framework 6 をサポートするように更新されたフレームワークとコントロール

Entity Framework 6 で動作するように、動的データ フレームワーク、エンティティ データ ソース管理、ユニバーサル プロバイダーを更新しました。

認証の更新

ASP.NET 4.6 テンプレートでは、Open Id Connect ミドルウェアを使用して Azure AD で認証できるようになりました。 これにより、Azure AD で認証するプログラミング モデルがはるかに簡単になります。

[個々のユーザー アカウント] オプションを選択した場合、ASP.NET 4.6 テンプレートは、ASP.NET ID を使用して 2 要素認証とソーシャル ログインを使用する方法を示します。

ASP.NET MVC 5.2.3、Web Pages 3.2.3、Web API 5.2.3

MVC 5.2、Web Pages 3.2、Web API 2.2 の最新のランタイム パッケージを使用するようにテンプレート パッケージを更新しました。 これらのパッケージ更新プログラムの詳細については、 ASP.NET MVC 5.2.3、Web Pages 3.2.3、Web API 5.2.3 リリース のブログ投稿を参照してください。

ASP.NET Web API OData 5.3.1

Web OData 5.3.1 ASP.NET 使用するように Web API OData スキャフォールディングを更新しました。 詳細については、「 ASP.NET Web API OData 5.3 の新機能」を参照してください。

SignalR 2.1.2

SignalR 2.1.2 を使用するようにテンプレート パッケージを更新しました。 GitHub の SignalR リリース ノート を参照してください。

Microsoft Owin 3.0 パッケージ

Microsoft Owin 3.0 NuGet パッケージを使用するようにテンプレート パッケージを更新しました。 Katana プロジェクトを参照してください。

ASP.NET アイデンティティ 2.2.1

ASP.NET Identity 2.2.1 には、2.1 を超える多くのバグ修正とパフォーマンスの向上があります。 詳細については、この ASP.NET Identity 2.2.1 のブログ投稿を参照してください。

ASP.NET ツールの更新

JSON エディターの機能強化

JSON スキーマの非同期読み込み、子スキーマのキャッシュ、IntelliSense の向上のサポートなどのパフォーマンスの向上など、JSON エディターでいくつかの改善が行われました。 さらに、次の新機能があります。

  • JSON スキーマの検証。 スキーマ ドロップダウン リストで定義されているスキーマに基づいて、JSON スキーマ検証機能を追加します。
  • コンテキスト メニューの縮小解除。 JSON エディターを右クリックし、[縮小解除] コンテキスト メニューを選択して、JSON ファイル内の長い配列を縮小解除できます。
  • コンテキスト メニュー [スキーマの再読み込み] Visual Studio は、インターネットからダウンロードされたスキーマをキャッシュし、Visual Studio を再起動した後でもキャッシュを使用します。 スキーマが変更されたことがわかっている場合は、コンテキスト メニューの [スキーマの再読み込み] Ctrl + Shift + J キーを使用して、現在使用されているスキーマをアクティブな JSON ドキュメントに再ダウンロードし、現在のドキュメントですぐに使用できます。
  • package.json/bower.jsonの IntelliSense。 Visual Studio では、package.json ファイルと bower.json ファイルの両方に対する IntelliSense と検証を証明するだけでなく、JSON エディター内で直接 Bower パッケージと npm パッケージの両方にライブ IntelliSense を提供します。
  • プロパティの検証が重複しています。 JSON エディターで、重複するプロパティの検証が提供されるようになりました。 これは、JSON ファイルの作成に関する一般的な問題をキャッチするのに役立ちます。
  • JSON スキーマドラフト v4 仕様を完全にサポートすることで、IntelliSense と JSON ファイルの検証の両方のサポートが大幅に改善されました。 必要なプロパティを簡単に識別できるようになりました。エディターを使用すると、プロパティをアルファベット順に簡単に並べ替えることができます。 縮小された JSON ファイルを書式設定すると、自動的に縮小解除されます。
  • 有用な JSON スキーマ ファイルのオープン ソース コレクションである SchemaStore.org のサポートを追加しました。 つまり、SchemaStore.org に関連付けられたスキーマを持つ JSON ファイルが Visual Studio で開かれると、IntelliSense と検証が自動的に取得されます。
  • JSON スキーマ作成者のサポートは、スキーマのサニティ検証の向上によってさらに強化されました。

HTML エディターの機能強化

HTML エディターは、Web 標準の IntelliSense を更新し、次の新機能を導入しました。

  • クライアント テンプレートの書式設定が向上しました。 HTML エディターでは、二重カーリー構文 {{...}} が解析または書式設定されなくなりました。 これは、その構文の内容が HTML として扱われず、HTML フォーマッタを使用して正しく行うことができないコンテンツを無効にしたり、書式設定を試みたりしないようにするためです。 これは、Angular、Handlebars、Mustache、およびその他の二重巻きテンプレート構文に適しています。
  • カスタム要素、ポリマー要素、および属性のサポート。 HTML エディターでは、さまざまなフレームワークに多くのカスタム タグがあるため、カスタム要素の不明な属性は検証されなくなりました。 不明な要素の下に波線が表示されなくなります。
  • Web コンポーネントの基本的な IntelliSense。 HTML エディターには、Web コンポーネント標準の一部である <link rel="import" /> 用の IntelliSense があります。
  • HTML 要素のヒント。 エディター内の HTML 要素に対してツールチップが提供されます。
  • #region サポートに関する機能。 HTML エディターで領域の折りたたみがサポートされるようになりました。 周囲のスニペットを使用して、現在の選択範囲も囲むことができます。
  • タスク リストでの Todo/Hack コメントのサポート。
  • Angular アイコン。 両方の Angular ディレクティブ (例: <<ng-view>) と属性 (例: ng-controller) が IntelliSense に Angular ロゴと共に表示され、識別が容易になりました。
  • ブートストラップ アイコン。 クラス名がブートストラップ CSS ファイルによって定義されている場合、HTML クラス属性で提供される IntelliSense が Bootstrap ロゴと共に表示されるようになりました。

CSS/LESS/Sass エディターの機能強化

  • タスク リストでの Todo/Hack コメントのサポート。
  • @viewport LESS エディターの修正。 LESS エディターで、 @viewport 検証の警告が表示されなくなります。
  • さらに多くのスニペットを提供します。 CSS/LESS/Sass エディターでは、開発エクスペリエンスを容易にするために、より多くのスニペットが提供されるようになりました。
  • Visual Studio 2015 で、LESS、Scss、CoffeeScirpt の両方をコンパイルするための拡張機能を使用できるようになりました。 こちらでダウンロードできます。

JSX エディター (React.js)

Visual Studio では、.jsx ファイル拡張子を持つファイルの JSX 構文がサポートされるようになりました。 入力時にエディターで IntelliSense、書式設定、および検証を同時に利用できます。 このエディターは、React.js ライブラリを担当する Facebook チームと共同で構築されました。

ブラウザー リンク

CSS は自動的に同期されます。 CSS ファイルを保存するか、(たとえば LESS/SASS コンパイラを使用して) 外部に変更すると、CSS ファイル全体がブラウザーで再読み込みされます。 ファイルが自動同期できない場合、Ctrl + S キーを押すと自動的に再読み込みが行われ、リンクされたブラウザーを更新せずに適切な状態に戻す必要があります (Ctrl + Alt + Enter キー)。 この機能は、ツール バーで無効にすることができます。

詳細については、 ASP.NET を参照してください。

ASP.NET 5

ASP.NET 5 は、クラウドとオンプレミスの両方のサーバー用の最新の Web アプリケーションを構築するための、無駄のない構成可能な .NET スタックです。 このパックには、次の機能があります。

  • 新しい軽量リクエストパイプライン
  • IIS で実行するか、独自のプロセスでセルフホステッドで実行する
  • 完全な .NET Framework または .NET Core 上で実行できる新しい .NET 実行環境 (DNX) 上に構築されています。これは、真のサイドバイサイド バージョン管理をサポートする新しいクラウド最適化ランタイムです。
  • Windows、Mac、Linux でクロスプラットフォームを実行する
  • NuGet のすべて (ランタイム自体も含む)
  • MVC 6 ASP.NET サポート - Web UI および Web API 用の統合 Web フレームワーク
  • クラウドへのシームレスな移行のための環境ベースの構成
  • すぐに使用する依存関係の挿入
  • 新しい Visual Studio プロジェクト システムと高い生産性ツール エクスペリエンス
  • .NET Foundation を介して GitHub 上のすべてのオープン ソース

Visual Studio 2015 には、ASP.NET 5 beta5 ランタイム パッケージが含まれています。 これらのパッケージはまだプレビュー段階であり、運用環境での使用はお勧めしません。 追加された特定の拡張機能と修正された問題に関するすべての詳細は、GitHub で 公開されているリリース ノート で確認できます。

Visual Studio 2015 には、新しいプロジェクト システムと、ASP.NET 5 個のアプリケーションを構築し、DNX プロジェクトを操作するための統合ツール エクスペリエンスが付属しています。 新しいツール機能の一部を次に示します。

  • Windows、Mac、Linux でビルドおよび実行されるクロスプラットフォーム DNX ベースのプロジェクトを作成するための新しいプロジェクト システム。
  • MVC 6、Identity 3、Entity Framework 7 を使用して ASP.NET 5 個の Web サイトと Web API を作成するためのテンプレート。
  • DNX ベースのクラス ライブラリとコンソール アプリケーションを作成するためのテンプレート
  • NuGet を使用してクロスプラットフォーム のコマンド ライン ツールを作成して配布します。
  • 開発者コマンド プロンプトから .NET バージョン マネージャー (DNVM) を使用して、さまざまな DNX バージョンをインストールして管理します。
  • NuGet パッケージを検索、インストール、復元するための統合されたエクスペリエンス。
  • Ctrl + を使用します。 C#コード内の未解決のシンボルに対して NuGet パッケージを検索してインストールするために使用します。
  • パッケージ管理の統合や新しいタスク ランナー エクスプローラーなど、NPM、Grunt/Gulp、Bower を使用したクライアント側 Web 開発用の統合ツール。
  • [実行] ボタンのドロップダウン メニューを使用して、Visual Studio 内から直接プロジェクト レベルの DNX コマンドを実行します。
  • カスタム環境変数の設定など、IIS Express を起動するカスタム起動プロファイルを作成します。
  • .NET Core を含む複数のフレームワークを対象とする 1 つのプロジェクトから NuGet パッケージをビルドします。
  • 1 つのプロジェクトから複数のターゲット フレームワーク用にビルドするときの IntelliSense の組み合わせ。
  • タグ ヘルパーなど、ASP.NET 5 によって導入された新しい Razor 機能が、IntelliSense と構文の強調表示の両方で明るくなりました。

このリリースの新機能

  • 使用できないバージョンの DNX を必要とするプロジェクトを開くと、Visual Studio は必要な DNX バージョンをインストールするように求められます。
  • [参照の追加] ダイアログを使用して、アセンブリを失う参照を追加できるようになりました。
  • ASP.NET 5 Web アプリケーション テンプレートで、認証用の職場および学校アカウント オプションがサポートされるようになりました。
  • [新しい ASP.NET プロジェクト] ダイアログの [クラウドでホスト] オプションが、ASP.NET 5 つのプロジェクトで使用できるようになりました。
  • サーバー エクスプローラーを使用して、Azure でホストされている 5 つのプロジェクトに対して approot の下にあるファイル ASP.NET リモート編集を行います。

詳細については、GitHub の ツールのリリース ノート、.NET Web 開発とツールに関するブログを参照してください。

Azure ツール

アカウント ピッカーの統合

アカウント ピッカーは、複数のアカウントへのワンクリック アクセスを有効にするために、Web 発行および Web アプリの作成/選択ダイアログ全体で使用されます。 複数のアカウントに 1 回ログインし、リソースを発行するときに個々のアカウントをすばやく簡単に選択できます。

API Apps

API Apps プレビュー テンプレート、発行サポート、サーバー エクスプローラーの可視性はすべて Visual Studio 2015 に移行されました。 これで、最新バージョンの Visual Studio を使用して Azure API Apps を作成してデプロイできます。 さらに、Swagger 出力機能が改善され、API アプリ開発者は、ASP.NET Web API から動的に生成された Swagger のすぐに使用できるサポートが向上しました。

WebJobs ツール

次の方法で、Azure Web サイト内のサーバー エクスプローラー Web ジョブ ノードで Web ジョブを制御できるようになりました。

  • サーバー エクスプローラーの Web サイト ノードの下にある Web ジョブ ノード。
  • サーバー エクスプローラーから継続的 Web ジョブを開始/停止します。
  • サーバー エクスプローラーからオンデマンドジョブまたはスケジュールされたジョブを実行します。
  • サーバー エクスプローラーから WebJob ダッシュボードを表示します。
  • [ダッシュボードの表示] コンテキスト メニュー。これを使用して、Azure Web サイトの WebJob ダッシュボードに移動します。

WebJobs SDK

Azure WebJob プロジェクト テンプレートには、WebJobs SDK がプレインストールされています。

NuGet

NuGet 2.8.3

DevExtreme プロジェクトと BizTalkProject 2.8.3 のサポートが追加されました。 詳細については、 NuGet 2.8.3 リリース ノートを参照してください。

NuGet パッケージ マネージャー

Visual Studio 2015 のソリューション全体でパッケージをより簡単に管理できるように、NuGet Package Manger ユーザー インターフェイスを更新しました。 プロジェクトにインストールされているパッケージ間で 1 つのビューを使用すると、NuGet ギャラリーから利用可能なパッケージの一覧、インストールされているパッケージ、および利用可能な更新プログラムがあるパッケージをフィルター処理できます。

NuGet ギャラリー

新しい Web サービスと統合クライアントを使用して、NuGet ギャラリーのパフォーマンスを向上しました。 NuGet の更新プログラムの詳細については、 http://docs.nuget.orgを参照してください。

JavaScript

JavaScript エディターのサポート

さらに便利になるように JavaScript エディターを更新しました。

  • AngularJS のツールサポート。 AngularJS を使用してアプリを作成する場合、IntelliSense では、Angular コントローラー、サービス、ファクトリ、ディレクティブ、アニメーションに関する提案が提供されます。
  • クラス、矢印関数、テンプレート文字列など、(ES6 バージョンの JavaScript の) 新しい JavaScript 言語機能がサポートされています。
  • ナビゲーション バーの共有プロジェクトのサポート。 Windows ユニバーサル アプリ プロジェクトの共有プロジェクトでナビゲーション バーを使用できるようになりました。
  • 新しいナビゲーション バー。 新しいナビゲーション バーを使用すると、JavaScript ソース コードの主要な要素間を簡単に移動できます。
  • JSDoc コメント。 IntelliSense を使用すると、JSDoc 形式で記述されたドキュメント コメントが表示されるようになりました。 (JSDoc コメントの詳細については、 https://jsdoc.app/を参照してください。
  • オブジェクト リテラル IntelliSense。 JavaScript エディターでは、JSDoc を使用して文書化された関数にオブジェクト リテラルを渡すときの IntelliSense の提案が提供されます。
  • 展開/折りたたみ。 複数行コメント、複数行配列、すべての複数行ブロックなど、JavaScript コードのセクションをさらに展開したり折りたたんだりすることができます。
  • タスク リストのサポート。 タスク リスト機能を使用すると、JavaScript コードでタスク コメント (// TODO など) を確認できます。

TypeScript

Visual Studio 2015 には、TypeScript ツールの 1.5 リリース が含まれています。 このリリースでは、ECMAScript 6 の豊富なサポートが追加されました。具体的には、モジュール、デストラクチャリング、for..of ループ、スプレッド構文、シンボル、計算プロパティ、ES3/ES5 向けの let/const、および ES3/ES5 用のタグ付き文字列テンプレートを含みます。 TypeScript 1.5 では、ES6 のサポートに加えて、試験的な ES7 デコレータの提案、UMD および System.js モジュールの出力、および "tsconfig.json" という新しい軽量で移植可能なプロジェクト ファイルのサポートも追加されています。

IntelliTest

Visual Studio 2015 では、テスト データと一連の単体テストを生成する .NET コードを探索する IntelliTest が追加されました。 コード内のすべてのステートメントに対して、そのステートメントを実行するテスト入力が生成されます。 ケース分析は、コード内のすべての条件分岐に対して実行されます。 たとえば、

例外をスローできるすべての操作、例えば if ステートメントやアサーションが分析されます。 この分析は、各メソッドのパラメーター化された単体テストのテスト データを生成するために使用され、コード カバレッジが最大の単体テストを作成します。 その後、ドメインの知識を得て、これらの単体テストを改善します。

また、IntelliTest に次の機能も追加しました。

  • パラメーター化された単体テスト。 IntelliTest を使用すると、テスト データ生成のガイド、テスト対象のコードの正確性プロパティの指定、およびテスト対象のコードの探索を指示するために使用できる API のサポートが可能になります。 この API は Microsoft.Pex.Framework 名前空間で使用でき、IntelliTest によって生成されるテスト メソッド (パラメーター化された単体テスト、ファクトリ メソッド) で使用できます。 そのため、生成されたテスト メソッドからも "IntelliTest" コンテキスト メニュー コマンドを使用できるようになりました。
  • スタブの作成をテストします。 "単体テストの作成" は、テスト プロジェクト、テスト クラス、およびテスト スタブを作成および構成する機能を提供するコマンドとしてコンテキスト メニューで使用できるようになりました。

IntelliTest (旧称"Smart Unit Tests") の詳細については、「 IntelliTest を使用してコードの単体テストを生成する」を参照してください。

アプリケーション インサイト (Application Insights)

さまざまなパフォーマンスの強化とバグ修正に加えて、Application Insights には次の更新プログラムが含まれるようになりました。

  • Visual Studio の Application Insights ツールが Visual Studio 接続済みサービスの一部になりました。 (Application Insights を追加するには、[接続済みサービス] ダイアログを開き、サービスの一覧から Application Insights を選択します)。
  • この更新プログラムは、Visual Studio 2013 Update 3 または Visual Studio 2013 Update 4 で Application Insights が追加されたプロジェクトと完全に互換性があります。
  • ASP.NET 5 人の開発者、Windows 10 ユニバーサル アプリ開発者、および Windows 8.1 ユニバーサル アプリ開発者は、Visual Studio から直接、プロジェクトに Application Insights を追加できます。
  • Windows 10 ユニバーサル アプリ開発者は、Application Insights SDK を追加するために Azure にサインインする必要はありません。代わりに、Visual Studio の Application Insights ツールを使用して追加できます。
  • Application Insights は Visual Studio のグローバル アカウント ピッカーを使用するため、Visual Studio 全体で同じアカウントを使用できます。
  • これで、Project のサービス参照フォルダーから Application Insights の "作業の開始" 情報を表示できるようになりました。[作業の開始] フォルダーをクリックするだけです。

プロジェクトのサービス参照フォルダーから Application Insights の概要情報を表示します。

リリース管理

この機能を使用すると、アプリのリリースを管理するプロセスを改善し、個別のステージごとに特定の環境にアプリをデプロイし、各ステップの承認を得てプロセスのステップを管理できます。 Visual Studio Online のリリース管理サービスを使用して、オンプレミスのリリース管理サーバーをインストールして管理しなくても、チェックインからデプロイまでのリリース パイプラインを設定できます。

リリース管理の更新バージョンは、Visual Studio 2015 で使用できます。 これは、Visual Studio 2013 の既存のリリース管理とよく似ていますが、次の領域でパフォーマンスが向上します。

  • リリースプロセスと通知の概要を示すリリース管理クライアントの起動ページ。
  • 追加のキャッシュを使用して、他のリリース管理クライアントページでのレンダリングとインタラクティビティ機能を向上させます。
  • Active Directory と TFS セキュリティ グループの同期。
  • 新しいリリースの作成。

Team Foundation Server 2015 に含まれる新しいビルド システムのビルド定義のコンポーネントとリリース定義を定義できるようになりました。 コンポーネントを定義するときに、ビルド定義から発行された成果物の名前と同じ (または含まれている) コンポーネント名を使用して、コンポーネントの成果物を指定することもできます。

Git バージョン 管理

ブランチを操作し、履歴の変化がどのように分岐したかを確認する方が簡単です。

支店

プレフィックスを指定することで、ブランチを階層的に整理できます。

ローカル ブランチとリモート ブランチ (ローカルで作成していないブランチを含む) は、ツリー ビューに個別に表示されます。

Git ブランチ

RC の時点で、ブランチ ページを修正しました。

  • リモート ブランチとローカル ブランチからマージできるようになりました。
  • マージ先のブランチは、現在チェックアウトされているブランチと関連付けられました。
  • 現在のブランチから任意のローカルブランチまたはリモートブランチにリベースできるようになりました。
  • リモート ブランチをチェックアウトするには、リモート ブランチをダブルクリックするか、右クリックして [チェックアウト] を選択します。

リモート管理

チーム エクスプローラーで Git リモートを構成できるようになりました。 [リポジトリの設定] には、リモートを追加、編集、または削除できる、現在構成されているリモートを示す新しい Remotes セクションがあります。 たとえば、配信元のリモートの URL を変更する必要がある場合は、[編集] をクリックしてフェッチやプッシュ URL を変更できます。

詳細な履歴

コミットが履歴でどのように分岐しているかを確認できるようになりました。

履歴の詳細ビュー

グラフでは、マージ コミットは灰色で、非マージ コミットはより明るい色です。 単純ビューと詳細ビューを切り替えることができます。 グラフが切り捨てられている場合は、サイズを変更できます。

RC リリースで履歴グラフにいくつかの更新を行いました。

  • グラフに表示される詳細レベルを制御できるツール バーが追加されました。
  • 現在選択されているコミットから到達可能なコミットを示す履歴行を強調表示します。
  • ローカルブランチとリモートブランチが異なる場合は、両方の履歴行を表示します。 これは、ローカル ブランチをリベースした後に特に便利です。

チーム エクスプローラーでのリベース

チーム エクスプローラーでのリベースがサポートされるようになりました。 リベースを開始するには、[ブランチ] ページでリベース ポップアップをクリックするか、ブランチを右クリックして [Rebase On..] を選択します。

VSO リポジトリ

VSO リポジトリを作成するときの "作業の開始" エクスペリエンスが向上し、新しいリポジトリの作成を効率化するためにさらに多くの変更が加わります。 RC の場合、既存のリポジトリに新しいコードを簡単に追加できるように小さな変更を行いました。チーム エクスプローラーを使用してリポジトリに接続し、[ ファイル] > [新しいプロジェクト] を選択すると、接続されているリポジトリのルートからダイアログが開始されます。

Visual Studio Online に発行する

Visual Studio Online への発行機能により、ローカル リポジトリを Visual Studio Online に取得するプロセスが大幅に簡略化されます。 以前は12の手順が必要だったものが、今では2つの手順で済みます。 [チーム エクスプローラーの同期] ページの新しい [Visual Studio Online に発行] セクションでは、Visual Studio アカウント マネージャーで任意のユーザー アカウントを選択できます。 Visual Studio のオンライン アカウントは、自動的に一覧で使用できます。URL を覚える必要はありません。 コードを共有する準備ができたら、リポジトリをホストする新規または既存のチーム プロジェクトを選択し、[発行] をクリックするだけで完了です。

[Visual Studio Online に発行] ダイアログ ボックス

シングル サインイン

現在の他の多くの開発者と同様に、アプリケーションを開発するときに複数のクラウド サービスを利用できます。 たとえば、データを格納したり、ソース コードをクラウドに格納したり、アプリケーションをストアに発行したりするために、クラウド バックエンドをアプリケーションに追加した可能性があります。

以前は、これらの各サービスには個別のサインイン プロセスが必要であり、各サービスはサインインユーザーの状態を個別に管理してきました。

このリリースでは、Visual Studio の多くの統合クラウド サービスにアクセスするために必要な認証プロンプトを減らしています。 Visual Studio で最初のクラウド サービスに対して認証を行うと、自動的にサインインするか、他の統合クラウド サービスの認証プロンプトを減らします。

CodeLens

エディターで作業に集中しながら、コードの詳細を確認します。 コード参照、コードの変更、関連する TFS 項目、単体テストをすべてコードから離さずに検索します。

このリリースでは、CodeLens の "作成者" インジケーターを、新しい "チーム アクティビティ タイムライン" および "作成者と変更" 履歴インジケーターに置き換えられました。

  • [チーム アクティビティ タイムライン] インジケーターには、最後の作成者と最後の変更が行われた日時が表示されます。 このインジケーターを選択すると 、チーム アクティビティ ビューが開き、コードの変更のパターンを検索できます。 これは、時間の経過に伴う変更の影響を評価するのに役立ちます。
  • [ 作成者と変更] インジケーターには、ファイルを変更した作成者の数と変更の数が表示されます。 このインジケーターを選択すると、すべての変更、変更の詳細、およびリンクの一覧が開き、詳細情報が表示され、以前のバージョンが表示されます。

インジケーターからのすべての情報は、コードが Team Foundation バージョン管理 (Team Foundation Server と Visual Studio Online の両方) と Git リポジトリでホストされている場合に使用できます。 Team Foundation Server または Visual Studio Online で作業している場合は、作業項目に関する情報を取得することもできます。

これらのインジケーターは、以前のバージョンで使用できるインジケーターと共に、C# ファイルと Visual Basic ファイルのコード要素 (メソッド、フィールド、またはクラス) レベルで表示されます。 C# ファイルのチーム アクティビティ タイムライン インジケーターの例を次に示します。

C# ファイルのチーム アクティビティ タイムライン インジケーター

C# ファイルの作成者と変更インジケーターの例を次に示します。

C# ファイルの作成者と変更インジケーター

ただし、インジケーターは、他のすべての種類のファイル (C++、SQL、JavaScript、その他の種類のファイルなど) のファイル レベルで表示されるようになりました。 C# または Visual Basic コード ファイルではないファイルのチーム アクティビティ タイムライン インジケーターの例を次に示します。

C# または Visual Basic コード ファイルではないファイルのチーム アクティビティ タイムライン インジケーター

アーキテクチャ、設計、モデリング

コード マップと依存関係グラフ

コード内の特定の依存関係を理解する場合は、 コード マップを作成してそれらを視覚化します。 その後、コードの横に表示されるマップを使用して、これらのリレーションシップ間を移動できます。 コード マップは、コードの作業中またはデバッグ中にコード内の場所を追跡するのにも役立ちます。そのため、コードの設計の詳細を学習しながら、読むコードを減らすことができます。

RTM の最終リリースでは、グループの選択、編集、管理、グループコンテンツのレイアウトの変更に関連するセクションにコマンドをグループ化することで、コード要素とリンクのショートカット メニューをはるかに使いやすくしました。 また、テスト プロジェクトは他のプロジェクトとは異なるスタイルで表示され、マップ上の要素のアイコンがより適切なバージョンに更新されていることにも注意してください。

コード マップ内の新しいグループ化

また、コード要素の内容の表示方法も変更され、複数のグループを選択して、そのすべてにレイアウト スタイルを適用できるようになりました。 これで、コード マップでアセンブリ、名前空間、または型を展開するときに、いつでも便利な依存関係図を取得できます。

複数のグループを選択し、コード マップで 1 つのレイアウトを適用する

Visual Studio 2015 の以前のプレビューおよびリリース候補バージョンでは、次のことが可能な変更が行われました。

  • 改善されたトップダウン図を取得します。 中規模から大規模の Visual Studio ソリューションの場合は、簡略化された [アーキテクチャ] メニューを使用して、ソリューションに役立つコード マップを取得できるようになりました。 ソリューションのアセンブリはソリューション フォルダーによってグループ化されるため、コンテキストで表示し、ソリューションの構築に取り組んだ作業を活用できます。 プロジェクトとアセンブリの参照がすぐに表示され、リンクの種類が表示されます。 さらに、ソリューションの外部にあるアセンブリは、よりコンパクトな方法でグループ化されます。
  • 事後対応コード マップをより迅速に取得します。 ドラッグ アンド ドロップ操作によってすぐに結果が生成され、ノード間のリンクは、ノードの拡張や追加のノードの要求など、ユーザーが開始する後続の操作に影響を与えることなく、より迅速に作成されます。 特に、[Skip rebuilding your solution]\(ソリューションの再構築をスキップする\) オプションを使用すると、ダイアグラムを作成および編集するときにパフォーマンスを向上させることができます。 ソリューションをビルドせずにコード マップを作成すると、ビルドされていないアセンブリなど、すべてのコーナー ケースが処理されるようになりました。
  • コード要素のノードとグループをフィルター処理します。 マップをすばやく整理するには、カテゴリに基づいてコード要素を表示または非表示にしたり、ソリューション フォルダー、アセンブリ、名前空間、プロジェクト フォルダー、および型別にコード要素をグループ化したりできます。
  • リレーションシップをフィルター処理して、ダイアグラムを読みやすくします。 これには、グループ間リンクが含まれます。これにより、フィルター ウィンドウの操作が以前のリリースよりも押し付けにくくなります。
  • '依存関係リンクへのドリルイン' では、フィルターが考慮されます。 依存関係リンクへの貢献を理解するために展開すると、役に立つ明確な図が得られます。 図の煩雑さが軽減され、選択したリンク フィルター オプションが考慮されます。
  • クラス ビューとオブジェクト ブラウザーからダイアグラムを作成します。 [クラス ビュー] ウィンドウと [オブジェクト ブラウザー] ウィンドウから、新しいマップまたは既存のマップにファイルとアセンブリをドラッグ アンド ドロップします。

全体的に、コード マップに対して行った機能強化の包括的な一覧には、次のものが含まれます。

  • テスト プロジェクトのスタイルは異なり、フィルター処理できます。 スタイルが異なるため、マップ上のテスト プロジェクトをすばやく識別できるようになりました。 さらに、アプリケーションの作業コードに集中できるように、フィルターで除外できます。
  • コード要素はコンテキストと共に追加されます。 図はコンテキスト (必要に応じてフィルターで除外できるアセンブリとソリューション フォルダーまで) と共に表示されるようになったため、ソリューション エクスプローラー、クラス ビュー、オブジェクト ブラウザーからコード要素をドラッグ アンド ドロップすると、より便利な図が得られます。または、ソリューション エクスプローラーで要素を選択し、[コード マップに表示] を選択します。
  • 簡略化された外部依存関係リンク。 依存関係リンクは、System.Object、System.ValueType、System.Enum、および System.Delegate からの継承を表さなくなりました。これにより、コード マップで外部の依存関係を簡単に確認できます。

このリリースでのその他の設計とモデリングの変更:

  • レイヤー図。 クラス ビューとオブジェクト ブラウザーを使用して、これらの図を更新します。 ソフトウェア設計要件を満たすために、レイヤー図を使用して、ソフトウェアに必要な依存関係を記述します。 これらの制約を満たしていないコードを見つけ、このベースラインを使用して将来のコードを検証することで、この設計とコードの一貫性を保ちます。
  • UML 図。 UML クラス図とシーケンス図をコードから作成できなくなりました。 ただし、新しい UML 要素を使用してこれらの図を作成することはできます。
  • アーキテクチャ エクスプローラー。 アーキテクチャ エクスプローラーを使用して図を作成することはできなくなります。 ただし、ソリューション エクスプローラーは引き続き使用できます。

XAML 言語サービス

IntelliSense を含む高速で信頼性の高い最新の XAML 編集エクスペリエンスを提供できるように、.NET コンパイラ プラットフォーム ("Roslyn") 上に XAML 言語サービスを再構築しました。

これにより、XAML 作成エクスペリエンスは Visual Studio の他のファーストクラスの言語と等しくなります。 また、言語間リファクタリングに関する強力な機能セットを、はるかに高速な間隔で提供します。

その他

Visual Studio 2015 のエージェントでテスト コントローラーが不要になった

Agents for Visual Studio 2015 では、エージェントは TFS 2015 または Visual Studio Online と通信することでオーケストレーションを処理できるため、個別のテスト コントローラーは必要ありません。

すべての新しい Visual Studio 2015 および TFS 2015 シナリオでは、Visual Studio 2015 のエージェントを使用することをお勧めします。

ただし、テスト エージェントまたはテスト コントローラーが TFS 2013 で動作する必要がある場合は、Visual Studio 2013 Update 5 のエージェントを使用してテスト コントローラーを構成することをお勧めします。

テスト コントローラーは、TFS 2015 および TFS 2013 と互換性があります。 ただし、Visual Studio 2015 でのロード テストのサポートはエージェントの一部ではないため、Visual Studio 2013 Update 5 のエージェントをインストールしてコントローラーを構成することをお勧めします。

接続済みサービス

Visual Studio 2015 の新しい [接続済みサービスの追加] ダイアログでは、アプリケーションを Azure Application InsightsAzure StorageAzure Mobile Services、Office 365、Salesforce に簡単に接続できます。 接続済みサービスを追加するには、[参照] ノードを右クリックし、[ 接続済みサービスの追加...] を選択します。

接続済みサービスを追加する

[接続済みサービスの追加] ダイアログには、現在インストールされているすべての接続済みサービス プロバイダーが含まれており、プロバイダー、使用するテクノロジ、および現在のプロジェクトでサポートされている場合に関する詳細情報を取得する方法が提供されます。 他のプロバイダーは、[ その他のサービスの検索]... リンクを使用して拡張機能と更新プログラム ギャラリーで検出できます。 [ 接続済みサービスの追加] ダイアログも拡張可能です。 サービス開発者は、 Connected Services SDK を使用して、検出可能性を向上させ、サービスの使用を促進できるプロバイダーを構築できます。

企業用シングルサインオン

ビジネス アプリケーションの一般的なタスクは、Azure Active Directory を使用してエンタープライズ シングル サインオン用にアプリケーションを構成することです。 アプリケーションを右クリックし、[ Azure AD 認証の構成]... を選択することで、アプリケーションの構築中にいつでも簡単にこれを行えるようになりました。これにより、[接続済みサービスの追加] エクスペリエンスと同様のウィザードが表示され、Active Directory で動作するようにアプリケーションを構成するプロセスが案内されます。 ウィザードで Active Directory ドメインを指定すると、その Active Directory にアプリケーションが登録され、サインインを要求するようにアプリケーションが構成されます。

ウィザードで Active Directory ドメインを指定する

IIS 10 Express for Visual Studio 2015 RC

RC リリースには、IIS 10 Express の新しいバージョンが含まれていました。その新機能には、HTTP 2.0 のサポートと、Windows 10 とのビットの同期が含まれています。

その他の変更点: バグの修正と既知の問題

このリリースでのテクノロジの改善、バグ修正、既知の問題の詳細については、次のサポート技術情報 (KB) の記事を参照してください。

Azure SDK 2.7 for .NET

Azure SDK 2.7 は、Visual Studio 2015 の最終リリースでサポートされる最初の Azure SDK です。 Azure 開発エクスペリエンスの向上に役立つ新機能と更新プログラムの一部を次に示します。

  • Visual Studio 2015 のサインインの機能強化: Azure SDK 2.7 for Visual Studio 2015 では、 Role-Based アクセス制御、クラウド ソリューション プロバイダー、 DreamSpark、およびその他のアカウントとサブスクリプションの種類を介して Azure にアクセスするアカウントのサポートが含まれるようになりました。
  • Cloud Explorer for Visual Studio 2015: Azure SDK 2.7 には、Azure リソースの検索と表示、プロパティの検査、Visual Studio 内からの主要な開発者および診断アクションの実行のための、高パフォーマンスでスケーラブルなツールを提供する Cloud Explorer for Visual Studio 2015 が含まれています。
  • Visual Studio 2015 での仮想マシンのリモート デバッグ: Azure Resource Manager スタックを使用して作成された仮想マシンで実行されているリモート デバッグ プロセス。
  • Azure Resource Manager ツール: 新しい Visual Studio Online ビルド タスクを簡単に操作できるように、Azure Resource Manager ツールを更新しました。 さらに、ロール ベースのアクセス制御 (RBAC) と新しいサブスクリプションの種類を操作するための機能強化が追加されました。
  • Azure App Service Tools: App Service Tools は Visual Studio 2015 でも使用できるようになりました。 この更新プログラムにより、Web Apps のリモート プロファイリング サポート、API Apps の Swagger 生成の機能強化、および複数のアカウント サインインのサポートが提供されます。 App Service ツールでは、すべての機能に Azure Resource Management API が使用され、DreamSpark とクラウド サービス プロバイダーのサポートが有効になりました。 また、この更新プログラムの Visual Studio 2015 開発者向けの Azure API Apps プレビュー リリースのサポートも追加しました。
  • HDInsight ツール: このリリースでは、Tez で実行されている Hive ジョブの実行グラフのビューが追加され、Hive DML IntelliSense のサポートが拡張され、SCP.Net 用の NuGet が追加され、Storm テンプレートがアップグレードされ、Pig 用の新しいテンプレートが追加されました。
  • Azure Data Factory ツール: Azure SDK に含まれるようになったのは、Azure Data Factory ツールです。 私たちの目標は、Azure Data Factory の作成エクスペリエンスを簡素化し、オンボードとデプロイの課題を取り除することです。 Azure Data Factory Tools のカスタマイズされたエクスペリエンスと豊富なツールにより、新規ユーザーと上級ユーザーの両方の生産性と効率が向上します。 このリリースでは、Visual Studio インターフェイスを使用して、データ パイプラインを対話的に作成およびデプロイできます。 これらのツールの詳細については、 Azure Data Factory のブログ投稿 を参照してください。

Windows 10 SDK

このツールは Visual Studio 2015 を更新し、ユニバーサル Windows プラットフォームを実行するすべての Windows デバイスのアプリをビルド、デバッグ、送信するために必要なものをすべて提供します。 ハイライトは次のとおりです。

  • 任意の言語 (C#、VB、C++、JS) でユニバーサル Windows アプリを作成し、Windows 10 デバイスに展開します。
  • XAML アプリとネットワーク プロファイラー用の UI デバッグ ツールを含む、新しいデバッグおよび診断ツール。
  • 統合ストアに提出するためのアプリ パッケージを作成します。
  • Windows 10 Mobile Emulator では、PC のグラフィックス ハードウェア (GPU) を利用して、画面のレンダリングを高速化できるようになりました。 Microsoft RemoteFx を使用して、より高速で応答性の高いデバッグ環境を提供します。
  • Windows 10 Mobile Emulator の NFC シミュレーション機能を使用して、NFC/近接対応ユニバーサル アプリをビルドしてテストできるようになりました。
  • デバイス用に調整されたユーザー エクスペリエンスを作成するための豊富な XAML デザイナーのサポート。
  • クラウドでの .NET アプリの .NET ネイティブ コンパイル。

Windows 10 開発者ツールの詳細については、「 世界とアプリをアップグレードする時間です」を参照してください。

Visual Studio用Pythonツール 2.2

Visual Studio 内での Python のサポートは完全に無料です。

  • CPython、PyPy、IronPython など
  • 詳細な IntelliSense
  • 対話型デバッグ
  • Visual Studio の機能との統合
  • 無料でオープンソース

詳細については、「 Python Tools for Visual Studio」を参照してください。

Visual Studio Tools for Unity 2.0

Visual Studio を強力な Unity 開発環境に変換します。

  • マルチプラットフォーム ゲームを構築する
  • Visual Studio からのデバッグ
  • Visual Studio で Unity スクリプトを作成する
  • Visual Studio を使用して生産性を向上させる

Visual Studio Tools for Unity の詳細については、「Visual Studio を使用したゲーム開発」を参照してください。

Node.js Tools for Visual Studio 1.1 (RC)

2021 年 10 月更新:

Visual Studio Tools for Apache Cordova Node.js 安全に更新する

Visual Studio を強力な Node.js 開発環境に変換します。

  • 無料でオープン ソース
  • インテリジェントなコード補完
  • 高度なデバッグとプロファイリング
  • その他の Visual Studio 機能やサード パーティ製ツールとの統合
  • Node.js、io.js、JavaScript、TypeScript、HTML、CSS、JSON のサポート

Node.js Tools for Visual Studio の詳細を確認します。

Visual Studio 2015 用 Office 開発ツール

Office 365 API を使用した開発

  • Office 365 API Tools は、Visual Studio 2015 の新しい接続済みサービスを使用して、開発者が Office 365 API をプロジェクトに統合するためのガイド付きエクスペリエンスを提供します。
  • 接続済みサービス ウィザードで [Azure AD を使用して単一 Sign-On を構成する] を選択するだけで、ASP.NET MVC Web アプリケーションで Office 365 API Tools でシングル Sign-On を自動構成できるようになりました。
  • Office 365 API をプロジェクトに統合すると、Office 365 API Tools は、NuGet.org から最新バージョンの Office 365 API クライアント ライブラリ NuGet パッケージをダウンロード してインストールするようになりました。

SharePoint アドイン開発

  • SharePoint アドインを作成するときに、ツールはターゲットの SharePoint バージョンを、プロジェクト作成ウィザードで指定したデバッグ SharePoint Web サイトのバージョンに設定します。 ウィザードには、選択した SharePoint バージョンが表示され、その既定値をオーバーライドできます。 プロジェクト デザイナーの [SharePoint] タブを使用して、プロジェクトの作成後にターゲット バージョンを変更できます。
  • ツールは、ターゲット バージョンが SharePoint Online の場合、SharePoint Online クライアント側オブジェクト モデル (SPO-CSOM) を含む NuGet パッケージをプロジェクトにインストールするようになりました。 このツールは、SharePoint Online CSOM アセンブリへの参照をプロジェクトに追加します。 このツールは、Microsoft ダウンロード センターでリリースされた SharePoint Online クライアント コンポーネント SDK に依存しなくなりました。 これにより、Visual Studio の NuGet パッケージ マネージャーを使用して、今後 CSOM アセンブリを簡単にアップグレードできるようになります。
  • Microsoft Azure Service Bus の SAS 接続文字列または ACS 接続文字列を使用して、 SharePoint アドインのリモート イベント レシーバーをデバッグおよびトラブルシューティングできるようになりました。

Office アドイン開発

  • このリリースでは、アプリが Office Web アプリと Office 2013 クライアントの新機能をサポートできるように、ツールは常に v1.0 ではなく v1.1 マニフェストで Office 用の新しいアプリを作成します。 v1.0 マニフェストを使用する Office 用の既存のアプリの場合、v1.1 マニフェストを必要とする新機能が使用されると、ツールによってマニフェストが v1.1 にアップグレードされます。

Office Developer Tools for Visual Studio の詳細を確認します。

GitHub Extension for Visual Studio 2015

Visual Studio で GitHub リポジトリに接続する最も簡単な方法。

  • インストールが簡単
  • Visual Studio で GitHub に接続する
  • リポジトリを作成する
  • 1 回のクリックでリポジトリを複製する
  • ローカル作業を GitHub に発行する

GitHub Extension for Visual Studio の詳細を確認します。

クラウドベースのロード テスト

世界中の Azure データセンターからのクラウドベースのロード テスト

ロード テストを実行するために必要なインフラストラクチャの設定が簡単になりました。これで、世界中のサポートされている任意の Azure データセンターからクラウドベースのロード テストを実行できるようになりました。

クラウドベースのロード テストで高度なエージェント診断がサポートされるようになりました

このリリースでは、クラウドベースのロード テストのテスト エージェント診断を実行する機能を追加しました。

マシンにアクセスできないため、クラウドでのデバッグは困難であるため、テスト エージェントからログやその他の情報を収集することはできません。 ただし、高度なエージェント診断では、テスト エージェントからログを収集し、クラウドロード テストの結果にアタッチすることができます。