Redgate .NET Developer Bundle について

.NETの遅いコードやバグのあるコードを正確に突き止めて修正

Red Gate .NET Developer Bundle には、ANTS Performance Profiler Pro/ANTS Memory Profiler/Exception Hunter が取り込まれています。 これらのツールにより、アプリケーションのボトルネックを識別し、コードの最適化を保証するための、パフォーマンス・プロファイルが作成されます。アプリケーションにおけるメモリ使用状況を理解するために、そのプロファイルを利用することが可能です。そして、Red Gate Exception Hunter を用いることで、.NET アセンブリの分析と、メソッドがスローする取扱いが不可能な例外の検出も可能になります。 .NET Framework でサポートされる各種の言語を対象とし、また、アプリケーションを記述するデベロッパーと、.NET アプリケーションを試験するテスターのために、デザインされた製品です。

RedGate .NET Developer Bundle に含まれる製品:

  • ANTS Performance Profiler Pro
  • ANTS Memory Profiler
  • Exception Hunter
  • .NET Reflector Pro 

ANTS Performance Profiler Pro - ボトルネックを特定し、コードの最適化を保証します。

パフォーマンスのプロファイリング時において、コードのラインごとに消費される時間が、アプリケーションの運用時と同様に、ANTS Profiler により記録されます。詳細な結果を参照することで、最も時間を消費するコードのラインとメソッドが明らかになります。 そのため、パフォーマンス・ボトルネックが迅速に識別され、それに応じた最適化を、対象となる .NET アプリケーションに施すことが可能になります。

  • 識別:パフォーマンス・ボトルネックを迅速に発見。
  • 高速応答性:プログラムの実行に際して、そこへの影響を最小限に抑制。
  • ライン・レベルの計測:パフォーマンスを低下させるラインを特定するために、ドリル・ダウンを実現。
  • あらゆる .NET アプリケーションのプロファイルに対応:ASP.NET Web も含む。

ANTS Profiler には、Standard と Pro という、2つのエディションが提供されます:

2つのエディションの主な機能:

  • .NET 実行形式、Windowsサービス、COM+ Server、ASP.NET Web アプリケーションなどをサポート。
  • ライン・レベルでコードを計測。
  • アクティビティに応じて選択されたプロファイル・データを、参照するためのタイムライン。
  • 最悪のパフォーマンスを示すスタックを、トレースするために自動的に拡大表示される Call Tree。

Pro エディションに限定された機能:

  • 特定のメソッドに関する参照関係を視覚化する Call Graph。
  • メソッド・レベルのコード・タイムライン(高速のプロファイリング・モード)
  • 子プロセスのプロファイリング。
  • プロファイル結果の保存。
  • 検索/フィルタの機能。

ANTS Memory Profiler - .NET アプリケーションにおける、メモリ・リークの発見と対処

.NET の自動的なメモリ管理により開発は容易になりますが、アプリケーションでのメモリ・リークも生じやすくなります。たとえば、複雑なアプリケーションにおいて、イベント・ハンドラを unregister にし忘れることで、不要なオブジェクトがメモリ上に置き去りになるという問題が生じます。それにより、一般的には、メモリ使用が増加することになり、確認と解決策が提供されない場合には、アプリケーションのパフォーマンスの劣化や、メモリ不足によるクラッシュに至ることもあります。そのため、メモリ・プロファイラーが必要になります。

ANTS Memory Profiler 5 を用いる作業が簡単な理由は?

  • 最も効率のよいワークフォローを介して誘導することで、最適なスタート・ポイントを提示。
  • プロファイリング結果を適切な方式で明示することで、情報の容易な理解を促進。
  • グラフィカルな表現を用いてオブジェクト間の関連を表示することで、アプリケーションのメモリ使用に関するメンタル・マップの必要性を排除。
  • パワフルなフィルタリング・オプションを用いることで、確認の必要のあるオブジェクトに絞り込んだ参照を実現。 きわめて複雑なアプリケーションであっても、フィルタにより分析を促進。

Exception Hunter 例外処理の可能性について .NET アセンブリを分析

  • 起こりうるクラッシュの可能性を排除。
  • 作成された .NET アセンブリを分析。
  • アプリケーションがスローする、取り扱いが不能な例外を検出。

これまでの開発シーンでは、エラーが起きてメソッドが例外をスローするまで、デベロッパーは待たなければなりませんでした。

Exception Hunter は、アプリケーションがスローする可能性を持つ、例外のセットの検出とレポートを行う新しい解析ツールです。そのため、製品の出荷前に、問題に対処することが可能になります。 Exception Hunter を用いることで、例外をスローするコードまで掘り下げ、取り扱い不能な例外の位置を、迅速かつ容易に定めることが可能です。 アプリケーションを市場にリリースする前に、そこで得られた結果に基づき、いくつかのハンドリング・コードを用いて、取り扱う必要のある例外を判断することができます。

Exception Hunter が実現する処理:

  • 例外の発生する可能性を、製品の出荷前に識別。
  • 堅牢で安定したアプリケーションのリリースを保証。
  • アプリケーションが生じる可能性のある例外スローを、トライ&エラーの手作業により探し出すプロセスを排除し、生産性を向上。

Exception Hunterでは GUI バージョンに加えて、コマンド・ラインからの実行も提供されます。それにより、取り扱いが不能な例外を含むメソッドについての、自動的なレポートの生成が実現されます。

機能一覧

  • インテリジェントな分析エンジンにより、アプリケーションがスローする可能性のある例外セットを正確に予測。
  • アセンブリ・レベルからメソッド・レベルへ、ドリルダウンしていく能力を提供。
  • 検索フィールドの提供。
  • フィルタとオプションにより、初期化コードが偶発的に生じる例外を排除。
  • 例外に関するスタック・トレースを実現。
  • ビルド・プロセスに取り込まれる、コマンドラインのインターフェイス。

Exception Hunter とビルド環境を統合することで、アセンブリ内のすべてのメソッドに関する分析が可能となり、また、個々のメソッドの例外を示すレポートを、生成することが可能になります。さらに、この HTML レポートを用いて、それぞれの例外に対応するメソッドを示すことも可能です。

.NET Reflector Pro - サードパーティー製のコードをシームレスにデバッグします。 また、コードを伴わないアセンブリであっても、同様にデバッグすることが可能です。

コンパイルされた .NET アセンブリを調査/分析し、その結果をC#/Visual Basic/IL で示します。

新しい機能:

  • Visual Studio から.NET Reflector への移行。
  • .NET アセンブリのサポート。

.NET Reflector Pro

.NET Reflector Pro は Visual Studio のアドインであり、サードパーティー製のコードをシームレスにデバッグします。 また、コードを伴わないアセンブリであっても、同様にデバッグすることが可能です。

  • .NET Reflector のパワーを Visual Studio に統合。
  • サードパーティー製のアセンブリをVisual Studio で逆コンパイル。
  • 逆コンパイルされたアセンブリに対して、すべてのデバック・テクニックをステップごとに適用。

  Pro の機能:

  • アセンブリ全体を C# もしくは VB に逆コンパイルした後に、Visual Studio で参照/デバッグ。
  • Visual Studio 内で、各種のアセンブリをステップごとにデバッグ(不明瞭でない場合には)。
  • アセンブリ内のあらゆる場所に、ブレーク・ポイントの設定が可能。
  • 逆コンパイルされたコードで、変数を確認。
  • 逆コンパイルされたコードに対して、Visual Studio の先進的なデバッグ機能を適用。ウィンドウ内で、:Set Next Statement/Modify Variable Values/Dynamic Expression Evaluation などを活用。

汎用の機能

  • Windows シェル統合 - Reflector.exe の実行と、ファイル拡張子の登録。
  • ソースコードに対するクリック・ナビゲーション。
  • エクスポーズされるタイプおよび、インスタンス化されるタイプの位置を検索。
  • メソッドの展開と検査。
  • Linq クエリー記述のサポート。
  • Lambda 式のサポート。
  • アノニマス・メソッドと Null 値 のサポート。
  • 拡張メソッドのサポート。
  • コンテキスト検知のドキュメント・ビュー。
  • 仮想メソッドのオーバーライドを検索。
  • Code URL のサポート - IE 内でcode://mscorlib/System.Object を操作。
  • アセンブリ内のリソースを検査。