デバッグ、プロファイル、および診断

コード内にあるバグを素早く見つけます

editing-your-code-1-562x309@2x

クロス言語デバッグ

すべてのコードの高機能なデバッグ

Visual Studio では、C#/VB、C++、JavaScript、Python、XAML、HTML など、デバッグ サポートが有効なすべてのサポートされている言語において、優れたデバッグ エクスペリエンスが提供されます。

複数の言語を使用するアプリの場合、混合モードのデバッグによって言語境界をまたいで相互運用デバッグを行えます。

あらゆるプラットフォームまたは場所で

ローカル、リモート、および運用環境

Visual Studio はどこで実行されるコードでもデバッグできます。デスクトップ上にあるローカルの Windows アプリを起動することや、Android エミュレーターで起動することから、リモートの Azure インスタンス、iOS デバイス、ゲーム コンソール、Web ブラウザーに接続することまで行えます。

IntelliTrace およびダンプ ファイルの詳細分析などの機能を使用して、運用環境で問題をオフラインでデバッグできます。

詳細に設定された制御

中断して状態の検査を行う場所とタイミングを正確に制御可能

Visual Studio デバッガーを使用すると、実行を制御できます。つまり、処理中のスレッドすべてを一時停止し、その時点での状態を検査する場所を正確に決めることができます。 [すべて中断] を随時行うことや、ステートメントの [ステップ オーバー]、機能の [ステップ イン] と [ステップ アウト]、[Run To Click (クリックした場所まで実行)]、[エディット コンティニュ]、みんなのお気に入りである [ブレークポイント] の設定が行えます。

次のレベルに進み、ブレークポイントの柔軟な条件とアクションを構成してください。

柔軟に状態を検査

実行時の変数値を確認

必要な場所でアプリケーションを一時停止すると、変数値の検査を行うさまざまな手段が Visual Studio によって提供され、仮説を立てたり検証したりすることができます。

コードのステップ実行中における値の監視、ローカル変数の素早い確認、複雑な式の評価をすべて、デバッガーから離れることなく行えます。 データ構造を対話式で詳細にクエリ実行することも可能です。

優れた例外処理

何らかの問題が生じた場合にアラートを生成

コードの欠陥や予期しない状況は例外となって現れます。 例外によってアプリがクラッシュすることもあれば、突き止めるのが難しいバグになるだけの場合もあります。

Visual Studio でデバッグを行いながら、例外がスローされたときの通知の構成、さらには注意を向ける特定の例外の選択を行うことができます。 例外が発生すると、内部例外の情報や null 参照の分析結果と併せて、この場所に即座に警告が表示されるため、ブレークポイントに到達したときのように簡単に問題を確認できます。

スレッド化が簡単に

複雑なマルチスレッド コードの制御と検査の単純化

ご存じのとおり、マルチスレッド コードのデバッグはたいへん難しい作業です。 Visual Studio を使用すると、一度にマルチスレッドの実行を制御し、多数のスレッドの状態を検査できるので、全体像をすぐに把握できます。

1 つのグラフィカル ビューですべてのスレッドの呼び出し履歴を確認し、マルチスレッド間で式を評価して値の比較を行えます。 スレッドとタスクに関する情報の表示、フラグの指定、停止が簡単です。 実行コンテキストを迅速に切り替えたり、スレッド マーカーを使用してある時点で実行されているスレッドのコード行を確認したりできます。

機械により近い情報を取得…

コードが必要とする詳細情報を把握可能

場合によっては、特にシステム レベルの C++ コードの場合、見つけるのが困難なバグを診断するにはハードウェア レベルまで降りる必要があります。 Visual Studio では、[メモリ]、[レジスタ]、[逆アセンブリ] の各ウィンドウを使用してこれを行えます。

パフォーマンス上の問題を回避

アプリを迅速かつ堅固にする

コード作成中に、パフォーマンスを向上させる選択を行うための情報を取得できます。エディターの PerfTips や診断ツールを使用して、デバッグ中にコードのパフォーマンスとメモリの特性を理解できます。

デバッガーを使用することなく、包括的なプロファイル ツールによって、CPU、GPU、メモリ使用、UI 応答性、ネットワーク使用率といったアプリのパフォーマンスに関する詳細な分析が得られます。

「再現できない」ことがない

.NET コードのコード実行履歴

.NET コードを編集して F5 を押してテストすると、予期しない動作、つまりバグが生じることがあります。 そうしたバグの診断には、何時間もかけてソース コード全体を検索し、関連するコードを見つけ、ブレークポイントを設定する箇所を考えるという作業を繰り返す必要が生じることもあります。

Visual Studio の診断ツールと IntelliTrace を使用すると、ブレークポイントを使用せずに、コードの実行履歴を確認し、逆方向にナビゲートして状態を検査 できます。

簡単な UI デバッグ

XAML と HTML もコード

アプリの実行中に外観を思いどおりに変えることができます。設計時のデータに基づいてレイアウトを確認する必要はありません。

HTML または XAML ユーザー インターフェイスのアプリの場合、コード デバッグ機能を使用して UI レイヤーの問題を特定します。 また Visual Studio を使用すると、アプリの実行中に HTML DOM を探索し、XAML ビジュアル ツリーによって XAML コードの構造を視覚化できます。

学生、オープン ソース、個人の開発者向けの無料でフル機能の IDE

無償ダウンロード

小規模なチームのためのプロフェッショナル開発者用ツール、サービス、サブスクリプション特典

無料試用版

あらゆる規模のチームにおいて、品質やスケールについての厳しいニーズへの対応を可能にするエンド ツー エンド ソリューション

無料試用版