dotPeek 2019.3ヘルプ

型依存関係図の探索

インスペクション | タイプの依存関係図の表示

dotPeekを使用すると、タイプがソリューション内でどのように依存するかを視覚的に調べることができます。型依存関係図では、異なるプロジェクトまたはコンパイルされたアセンブリから任意の数の型を追加し、それらの間のさまざまな種類の依存関係を視覚化できます。

初期図の作成

新しい型依存関係図を作成するには、いくつかの方法があります。

  • コードビューアー内の任意の場所にキャレットを設定し、メインメニューでインスペクション | タイプの依存関係図の表示を選択するか、これを調べるコマンドを押して( Ctrl+Shift+Alt+Aを押して)、タイプの依存関係図の表示を選択します。
    この場合、ファイルからのすべてのタイプがダイアグラムに追加され、集約、使用、および継承の依存関係が視覚化されます。

  • ベースシンボルへ移動派生シンボルに移動APIを公開するために移動する、または類似のコマンドの結果リストで、Alt+Num+ を押すか図に表示するをクリックします。ThemedIcon TypeLayoutAlt Screen Gray
    ベース/派生シンボルの場合、継承階層の対応する部分がダイアグラムに追加され、継承の依存関係のみが視覚化されます。公開されているAPIの場合、ダイアグラムには指定された型を返し、型依存性のみを返すメソッドを含む型が表示されます。

  • 検索結果ウィンドウまたは階層ウィンドウに表示される結果のリストについては、図に表示する ThemedIcon TypeLayoutAlt Screen Gray をクリックしてください。
    このような場合、すべての使用箇所または階層エントリがダイアグラムに追加され、使用箇所/継承の依存関係が視覚化されます。

新しく作成されたプロジェクト依存関係図が階層ウィンドウの新しいタブに表示されます。

ダイアグラムはソリューションと同期されていないことに注意してください。つまり、コードのタイプを変更または削除しても、ダイアグラムは変更されません。ダイアグラムが最新かどうかを確認するには、右下隅に表示される作成時間を確認できます。ツールバーのリフレッシュ・タイプの依存性 ThemedIcon Refresh Screen Gray をクリックして、ダイアグラムを再構築することもできます。

図のビューを調整する

型依存性図は、次の2つの方法でレイアウトできます。

  • 継承階層レイアウター —このオプションは、継承関係に従って型を配置します。基本型は上に移動します。

  • ビジネスロジックレイヤー —このオプションは、表示されているすべての関係に従ってタイプを配置します。

これらのオプションを切り替えるには、左の対応するセレクタを使用します。

Switching layout on the type dependency diagram

ダイアグラムのレイアウトは、ダイアグラムをリフレッシュしたり、タイプを追加または削除したり依存関係フィルタを変更するたびに自動的にリフレッシュされます。

図をパンおよびズームするには、ダイアグラム領域の左上隅にあるコントロールを使用します。または、図の項目の外の図エリアの任意の場所をクリックし、手カーソル cursor hand が表示されている間にドラッグすることもできます。ズームの場合、マウスホイールを使用することもできます。

ダイアグラムのレイアウトは自動的に計算されますが、必要に応じて変更できます。すべてのアイテムを移動できます。アイテム(タイプ、依存関係リンク、またはグループ化アイテム)を移動するには、まずクリックして選択し、次にクロスカーソル cursor cross が表示されている間にクリックしてドラッグします。

必要に応じて、次のいずれかの方法で、ダイアグラムのグループ化項目を折りたたんで展開できます。

  • グループ化アイテムの左上隅にある下矢印をクリックします。折りたたむと、記号が上矢印に変わり、クリックしてアイテムを展開できます。

  • 図内のグループ化項目を選択し、Ctrl+Left,ArrowCtrl+Right,Arrowを押します。

図の項目の追加と削除

いつでも、表示されている図を修正して、目的のタイプのみが表示されるようにすることができます。必要に応じて、元に戻す ThemedIcon Undo Screen Gray をクリックするか Ctrl+Zを押して、ダイアグラムの変更(項目の追加/削除)を段階的に取り消すことができます。元に戻すコマンドを逆にするには、やり直し ThemedIcon Redo Screen Gray をクリックするか、Ctrl+Yを押します。

図からタイプとフォルダーを削除するには、項目をグループ化するときに右上隅の十字を使用するか、項目が選択されているときに Delete を押します。または、保存する項目を選択して右クリックし、コンテキストメニューで選択したアイテムのみを表示するを選択します。複数選択の場合、Ctrl - 項目をクリックします。

図にアイテムを追加する方法はいくつかあります。

  • コードビューアーでタイプを選択し、選択したタイプをダイアグラムにドラッグアンドドロップします。

  • 参照されているすべてのタイプを検索して追加するには、タイプまたはグループ化アイテムを右クリックし、コンテキストメニューで参照されるすべての型を追加するを選択します。グループ化アイテム(フォルダーまたはプロジェクト)でこのコマンドを呼び出すと、dotPeekは現在表示されているすべてのタイプの参照タイプを追加します。

  • 現在読み込まれているアセンブリと参照されているアセンブリから名前で型を検索して追加するには、検索ボックスに名前を入力し始めます。次のように入力するときに、ワイルドカード(アスタリスク *など)とキャメルハンプを使用できます。

    Adding types to the type dependency diagram
    タイプを選択して Enter を押すか、それをクリックして図に追加します。ドロップダウンで緑色で強調表示されているタイプは、すでに図に追加されています。そのようなタイプを選択すると、ダイアグラムのフォーカスがその型に移動します。

  • 詳細ポップアップで、関連するタイプをクリックして追加するか、すべての使用されたタイプをダイアグラムに追加するダイアグラムにすべての用途を追加するすべての基本タイプを追加する、および直ちに継承するすべての継承を追加するリンクを使用して複数のタイプを追加します。

特定のタイプとコンテナーの学習

ノードが折りたたまれている場合、その上にマウスを移動して、中身をすばやく確認できます。表示されるポップアップで、このノード内の図に追加されたタイプの数と、このノード内から参照されたすべてのモジュールを確認できます。

Studying projects and containers

必要に応じて、参照されているモジュールをクリックするか、不足しているアイテムを追加をクリックして、このノードから他のアイテムをダイアグラムに追加できます。

任意のタイプをダブルクリックして、エディターで開くことができます。コンパイルされたアセンブリで型が定義されている場合、コンパイルされたコードに移動するための推奨する方法に従って型が開かれます。

特定のタイプ(およびタイプ間の依存関係 )の詳細情報を取得できます。タイプの詳細を取得するには、その上にマウスを移動し、詳細ポップアップが表示されたらすぐに、その上にマウスポインターを移動します。

タイプの詳細ポップアップで、指定されたタイプが使用するタイプ、タイプが使用されている場所、継承されたタイプ、コンストラクターパラメーターで使用されているタイプなどが表示されます。
タイプにXMLドキュメントがある場合、要約もポップアップに表示されます。

タイプをクリックして、ダイアグラムに追加できます。緑色で強調表示されているタイプは、すでに図に追加されています。そのようなタイプをクリックすると、ダイアグラムのフォーカスがその型に移動します。上隅の宣言に移動リンクを使用すると、エディターでタイプを開くことができます。

Details of specific type on the dependency diagram

タイプ間の依存関係の学習

型依存図では、いくつかの種類の依存関係を視覚化できます。特定の種類の依存関係を表示または非表示にするには、フィルタ依存関係 ThemedIcon Filter Screen Gray セレクタの対応する項目を使用します。

  • 集約の依存関係 —タイプが他のタイプのコレクションまたはコンテナーである場合、一種の依存関係を表示します。
    この種の依存関係は、緑の点線で示されています。対応するフィールドの名前が行の横に表示されます。この行の上にマウスを置くと、フィールド宣言が表示され、エディターの対応する場所に移動できます。

  • 依存関係を使用する —あるタイプの変数、パラメーター、またはメソッドの戻り値が別のタイプで使用される場合、一種の依存関係を表示します。
    この種類の依存関係は、太さが相対的な使用回数を反映する青い線として表示されます。この行の上にマウスを置くと、使用箇所のリストが表示されます。

    Usage dependency
    特定の用途をクリックすると、テキストエディターの対応する場所に移動し、すべての使用箇所を表示リンクをクリックすると、検索結果ウィンドウのすべての用途が開きます。

  • 継承の依存関係 —あるタイプが別のタイプを拡張または実装するときに、ある種の依存関係を表示します。この種の依存関係は灰色の線で示されています。この行の上にマウスを置くと、継承関係が表示され、エディターの対応する場所に移動できます。
    推移的な継承の依存関係は破線で示されています。そのような線の上にマウスを移動し、ポップアップを使用して依存関係が発生するタイプを確認し、クリックすることでこれらのタイプを図に追加できます。

    Transitive dependency

  • 戻り値の型依存性 —あるタイプに別のタイプを返すメソッドまたはプロパティがある場合、一種の依存関係を表示します。この種の依存関係は紫色の線で示されています。この行にマウスを合わせると、メンバーのリストが表示され、エディターの対応する場所に移動できます。

  • コンストラクターインジェクション —あるタイプが別のタイプのコンストラクターパラメーターとして公開されている場合、一種の依存関係を表示します。この種の依存関係は茶色の線で示されています。この行の上にマウスを置くと、コンストラクターが表示され、エディターの対応する場所に移動できます。

ダイアグラム上に他のdotPeek機能を呼び出す

次にナビゲートメニューの項目の利用可能なすべてのナビゲーション宛先を一覧表示するには、項目を右クリックするか次にナビゲートを選択します。

項目が選択されているときに Shift+Alt+L を押すと、アセンブリー・エクスプローラーで任意の項目(ファイル、フォルダー、またはプロジェクト)を見つけることができます。

タイプの詳細ポップアップ検索結果ウィンドウにすべての使用済みタイプを表示するまたは検索結果ウィンドウにすべての使用箇所を表示するをクリックするか、依存関係リンクのポップアップですべての使用箇所を表示をクリックして、関連する使用箇所をリストすることもできます。

ダイアグラムをイメージにエクスポートする

依存関係を調べる時点で、現在のビューをイメージにエクスポートできます。これを行うには、PNGにエクスポートする ThemedIcon Export Screen Gray をクリックし、イメージファイルを保存する場所を指定します。

この機能は、JetBrains ReSharperに触発され、その機能を取り入れたものです。、Microsoft Visual Studio用の開発ツールです。

最終更新日: 2020年1月3日

関連ページ:

これを調べる

このコマンドはdotPeekのコード探索とインスペクション機能への近道です:型階層を調べる、型依存関係図、このコマンドは、コードビューアー、ファイル構造ウィンドウ、その他のツールウィンドウから起動できます。コンテキストに応じて、このショートカットはそのコンテキストで利用可能なすべてのコード探索機能に...

ベースシンボルへ移動

このコマンドを使用すると、継承階層を現在のシンボルの基本タイプまたはメソッドに移動することができます。コードビューアー、ファイル構造ウィンドウおよび他のツールウィンドウからこのコマンドを呼び出すことができます。派生シンボルに移動コマンドと実装に移動コマンドで反対方向のナビゲーションが可能です。ナビゲ...

派生シンボルに移動

このコマンドは、現在のシンボルのすべての派生シンボルのリストを取得し、継承階層を下にしてそれらの1つに直接ナビゲートすることができます。同様のコマンド実装に移動があります。このコマンドは、継承チェーンの中間ステップを使用せずに、実装のみをリストしています。ナビゲーションの代わりに、シンボルの完全な継...

APIを公開するために移動する

|APIの公開このコマンドを使用すると、ある型から、この型のインスタンスを取得できる現在ロードされているアセンブリ内のすべての場所(パブリックフィールドとプロパティー、メソッドの戻り値、出力パラメーターなど)に移動できます。このコマンドは、現在ロードされているアセンブリの宣言または任意のタイプの使用...

検索結果ウィンドウ

このウィンドウは、さまざまな検索結果を表示するために使用されます (たとえば、シンボルの使用箇所、シンボルのAPIを公開するなど)。最新の検索結果と以前の検索の結果を別のタブで表示します。新しい検索コマンドの結果は、同じ検索/ナビゲーションコマンドを除いて別のタブに表示されます。これらの結果をダブル...

階層ウィンドウ

階層ウィンドウには、コードのいくつかの型階層構造が表示されます。型階層、型依存関係図、アセンブリ依存図、参照の階層、ウィンドウタブ、型階層:このビューには、メンバーを含む型階層、および特定のタイプのすべてのサブタイプとスーパータイプのリストが表示されます。階層を分析してダブルクリックすると、その型の...