Visual Studio 2022 のロードマップ
Visual Studio は包括的な IDE であることを続け、開発を加速するための AI への投資を行い、.NET クラウドネイティブ アプリ開発を促進し、C++ およびゲーム開発ツールをリードしながら、基本的な開発プロセスを改善しています。 Microsoft では、ソフトウェア開発をより高速かつ効率的にするように設計された新機能と生産性向上機能をロールアウトし、開発者がどのようなプロジェクトにも適切なツールを使用できるようにしています。
このロードマップは、この先 1 年間の Visual Studio における主要な取り組みに関する Microsoft のビジョンを示すもので、以下の重要なテーマを含んでいます。
- Copilot を使用した AI は、比類のない可能性を持つ機能と生産性の新しい波をもたらします。 Visual Studio は、Copilot によって開発者や企業のクラス最高の機会をサポートするものとして独自に位置付けられます。
- .NET Aspire は、.NET クラウドネイティブ アプリの構築エクスペリエンスを向上させるように設計されており、Visual Studio はそのための最も優れた開発者ツールです。
- C++ ゲーム開発は成長を続けており、Visual Studio は現代のゲーム開発者のためのツールの絶対的な標準です。
- 基礎は、多くの顧客にとって重要な既存のワークロードに関する機能セットです。 これにはまた、すべての内部ループ開発者シナリオに対する生産性向上機能も含まれています。
私たちの使命は、.NET および C++ 開発者にとって最も魅力的な開発者エクスペリエンスを作成することによって顧客やパートナーの成功を促進することであり、このロードマップにはそれが反映されています。
Copilot を使用した AI
AI に関するイノベーションは加速しており、Visual Studio は、取り組みの中のいくつかの機能によってその最前線に位置しています。
AI を使用して既存の機能を更新すると、開発者エクスペリエンスにまったく新しいレイヤーを追加できます。 よく言われるように、コンピューター サイエンスでの最も難しいことの 1 つは名前付けですが、更新された AI の名前変更機能を使用するとこれが簡単になります。 名前付けが難しいのは、正しく理解することが重要であるためです。 開発者は、コードの記述よりコードの読み取りの方に大幅に多くの時間を費やし、名前付けはコード ベースの理解にとって重要です。
コード レビューやコミット履歴の理解にも同じことが当てはまります。 自分が行った変更を AI で分析し、関連する詳細な Git コミット メッセージと pull request の説明を提案するようにすると、コードとその履歴の読み取りに多くの時間を浪費することが回避されます。
デバッグは、あらゆるプロジェクトの成功にとって非常に重要なもう 1 つの主要なシナリオです。 Copilot は、エラー検索を支援し、条件付きブレークポイントおよびトレースポイントを設定し、パフォーマンス分析情報を分析することによって、アプリの信頼性とパフォーマンスを向上させることができます。
単体テストが失敗したとき、そのテストにもう一度合格させる方法の決定には注意が必要です。 それは今行ったコード変更のためでしょうか、または単体テストに問題があるのでしょうか。 Copilot は、テストが失敗した理由を説明し、単体テストに合格するためのクリーンなセットに戻すには何ができるかを提案することを支援できます。
.NET と Aspire
Microsoft では、Visual Studio と .NET Aspire ダッシュボードにより多くの機能や統合を組み込むことによって、.NET Aspire で導入したクラウドネイティブな開発エクスペリエンスを引き続き向上させています。 今後のプレビュー リリースでは、開発者が 1 つのジェスチャで Azure Container Apps にマルチノード アプリを発行することを簡単にする新しい方法を開始しています。 Visual Studio の右クリック発行では、Aspire から Container Apps への発行を Azure Developer CLI に依存しています。これは、開発者がより大きなアプリをより簡単に、より再現可能な結果で発行できるようにする優れたパートナーシップを示します。
また、このパートナーシップでは、開発者がローカルの開発者マシンで実行されている自身のコードをクラウド内リソースに接続できるようにするという問題も解決されます。 この "複製 -> プロビジョニング -> デバッグ -> デプロイ" のパラダイムが、新しい OpenAI イニシアティブより普及しているわけでは決してありません。Azure OpenAI を使用するには、まず Azure OpenAI リソースをプロビジョニングし、それに接続するようにアプリを構成する必要があります。 これらのシナリオを有効にするために、Web ツールおよび AZD チームはそのパートナーシップを深め、AZD で "開発時の" リソース プロビジョニングの疑問を解決し、Visual Studio の接続済みサービスを使用した素晴らしい機会につなげるにはどうすればよいかを調査しています。 .NET Aspire 開発者の Azure へのパスが摩擦のないものになるように、開発者環境と CI/CD 環境の両方でのプロビジョニングとデプロイを AZD の機能により深く依存する方向に進みたいと考えています。
C++ とゲーム開発
Microsoft では、すべての C++ 開発者向けの言語への準拠、生産性の向上、診断、そして特に安全性に関する改善に引き続き重点を置いています。 クロス プラットフォームとゲーム開発者のワークロードは今後も、Unreal Engine プロジェクトのサポートの GA への移行も含め、重点領域になります。 また、C++ 開発者向けの Copilot への革新的な新機能の導入にも取り組んでいます。
基礎
Visual Studio の中心には、そのすべての機能、生産性、カスタマイズを含む開発者エクスペリエンスがあります。 内部ループ内のイノベーションは引き続き最優先事項であり、Visual Studio は開発者と企業のどちらにも主要な機能を提供します。
Git ツール
Microsoft は引き続き、特に GitHub と Azure DevOps (ADO) を除く、すべてのリポジトリの包括的な Git 統合を提供することに努めています。
AI を活用した完全な機能を備えた GitHub と Azure DevOps Pull Request の統合を使用して、コードの作成からレビューまでのコード レビュー処理を完了します。 生成された pull request の説明、エディターでの pull request コメントの直接追加、AI コード レビューの提案によって、コンテキストの切り替えが少なくなるため、フローに留まったままでコードを構築でき、コラボレーターとのコード作成が向上します。
各リポジトリでユーザーの優先アカウントが記憶されるため、複数の GitHub アカウント間の切り替えが簡単になり、より優れたガードレールを備えた GitHub 内部リポジトリを作成してセキュリティを確保します。
デバッガーとプロファイラーの更新
Microsoft は、すべてのプラットフォームにわたってより信頼性が高く、より高速なデバッグ エクスペリエンスを提供することに努めています。 さらに、デバッグ ビジュアライザーとメモリ分析で生産性の向上を実装することに重点を置いています。 今後も、外部ソースのデバッグ、Unreal プロジェクトのデバッグ、クロスプラットフォーム デバッグ シナリオの処理のサポートを引き続き微調整していきます。
プロファイリングの点から見ると、引き続きベンチマーク .NET のシナリオを効率化し、より生産性の高い開発エクスペリエンスのためにそれらを Git パイプラインと統合しています。
最後に、AI を活用した内部ループ エクスペリエンスの向上を優先して根本的な問題の識別を迅速化することによって、デバッグ エクスペリエンスをはるかに簡単かつスムーズなものにすることを計画しています。
テスト
IntelliTest の新しいバージョンは現在プレビュー段階にあるため、このプレビューからのフィードバックに対処し、.NET Core および x64 デバイスを対象としたテストのサポートを提供するこの新しいバージョンの IntelliTest をリリースすることに努めています。
Microsoft は失敗したテストから迅速に復旧する方法に関するエクスペリエンスへの投資を行っています。
手始めに、失敗したすべてのテスト向けの Explain with Copilot を追加します。 次に、失敗したテスト向けの Debug with Copilot が続きます。 これら 2 つは、失敗したテストの根本原因をすばやく特定し、修正を行うにあたって AI が開発者を支援する例です。
その上で、Microsoft は Visual Studio を使用している開発者だけでなく、すべての開発者向けに MSTest 全般の改善を行っています。
デスクトップおよび Web 開発
Visual Studio での WinForms のサポートに向けて、デザイナーの品質とパフォーマンスに引き続き重点を置いていきます。
Web ツール チームは、API 開発の内部ループの生産性に焦点を絞って、Visual Studio を使用しているときの Web 開発のエンド ツー エンドのエクスペリエンスの向上に重点を置いています。 現在は、ASP.NET Core を使用したクラウドネイティブのシナリオを優先しています。
また、編集が適用される速度での信頼性の向上だけでなく、ホット リロード セッションで自動的に再読み込みできる編集の種類の強化を目的として、ホット リロードの効率も引き続き向上させています。
Microsoft では、Razor のフィードバックをお待ちしています。 Razor の編集エクスペリエンスのパフォーマンス、入力候補、一般的な信頼性の向上は、各リリースで引き続き重点を置いていく領域です。 Razor の編集が期待を満たしていないシナリオに関するフィードバックを引き続きお寄せください。
生産性
オールインワン Code Search のテキスト サポートは、プレビュー機能として使用できます。ここでは、ファイルとシンボルの検索結果がコードの文字列、コメント、ローカル変数、その他の情報で補完されるようになります。 将来的には、さまざまなスコープ オプションによる機能の追加、クエリの処理方法の改善、AI を導入する機会の検討に取り組んでいます。
新しい XML "ソリューション ファイル形式" は、現在のソリューション ファイルに存在するすべてのデータ モデルを表すため、プロジェクト構造にまたがる互換性が確保されます。 これにより、マージ中の競合解決が簡略化され、複雑な GUID がシンボル表現とプロジェクトの種類の人間が判読できる名前に置き換えられて読みやすさが優先されるほか、必要に応じて透明性のために式が利用されます。 これらの変更は、ソリューション ファイルの管理を効率化し、ユーザー エクスペリエンスを向上させることを目的としています。
より生産性の高い最新のエクスペリエンスをユーザーに提供するために、Visual Studio を構成するエクスペリエンスの再イメージ化に取り組んでいます。 17.10 以降で、より大きい設定の構成の余地、ユーザーおよびオープン ソリューション/フォルダー レベルで設定をカスタマイズする機能、拡張された設定検索機能、JSON ベースの設定の保存などを含むこの機能のプレビューを試すことができるようになります。 1 年を通して、Microsoft は引き続き設定を新しいエクスペリエンスに移行し、新しい統合設定エクスペリエンスに追加機能を導入していきます。
拡張性とパーソナル化
拡張機能は Visual Studio エコシステムの重要な要素であり、Microsoft はそれらを簡単に管理および構成できるようにするための取り組みを行っています。 Microsoft は最近、リポジトリ内の .vsconfig ファイルから拡張機能をインストールする機能をリリースし、ユーザーが拡張機能を簡単に検索、インストール、管理できるようにするための完全に新しい拡張機能マネージャーを導入しました。
Microsoft は、メインの IDE プロセスの外部で実行される拡張機能を構築するのに役立つ新しい VisualStudio.Extensibility SDK (現在はプレビュー段階) に関する開発も続けてきました。 メイン プロセスから拡張機能を取り出すとパフォーマンスと信頼性が向上するだけでなく、最新の直感的な .NET Core ベースの API や適切に保守されたドキュメントが提供されるため、開発者の生産性に焦点を絞る機会が得られます。 この新しい SDK には、Visual Studio Marketplace と Visual Studio の拡張機能マネージャーを経由した拡張機能への発行や管理を含む、要求が多かったいくつかの機能が間もなく導入されます。 拡張機能の構成とデバッグ、プロジェクト システムへのクエリ実行、強力なデバッガー ビジュアライザーの作成なども簡単に行うことができる新機能が間もなく提供されます。
チームは、生産性の向上、より包括的な環境の作成、進化するグローバルなアクセシビリティ要件の遵守を目的として、Visual Studio の更新された UI に取り組んできました。 この更新された UI のプレビューは、[ツール] > [オプション] に移動し、[実験段階のコントロール スタイル] をオンにすることによって有効にすることができます。 エディターのライトまたはダーク テーマをシェル テーマとは独立にすることや、フォントとカスタム テーマのより優れたストーリーを求めるフィードバックが既に寄せられています。 Microsoft では、これらに対処すると共に、ユーザーからの追加のフィードバックに常に注意しながらエクスペリエンスをさらに改良していきます。