dotPeek 2019.1ヘルプ

型依存関係図の探索

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

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+LeftArrowCtrl+RightArrowを押します。

図の項目の追加と削除

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

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

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

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

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

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

    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用の開発ツールです:
最終更新日: 2019年6月5日

関連事項

関連ページ:

これを調べる

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

ベースシンボルへ移動

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

派生シンボルに移動

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

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

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

検索結果ウィンドウ

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

階層ウィンドウ

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