dotPeek 2024.3 ヘルプ

型依存関係ダイアグラムを調べる

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

初期ダイアグラムを作成する

新しい型依存関係ダイアグラムを作成するには、いくつかの方法があります。

  • コードビューアー内の任意の場所にキャレットを置き、メインメニューでインスペクション | 型の依存関係ダイアグラムの表示を選択するか、これを調べるコマンドを呼び出して ( Control+Shift+Alt+A を押して)、型の依存関係ダイアグラムの表示を選択します。

    この場合、ファイルのすべての型がダイアグラムに追加され、集約、使用箇所、継承の依存関係が視覚化されます。

  • 使用箇所を表示ベースシンボルへ移動派生シンボルに移動次に移動: API の公開などのコマンドの結果リストポップアップで、Alt+Num+ を押すか、ダイアグラムに表示するShow on Diagram をクリックします。

    基本 / 派生シンボルの場合、継承階層の対応する部分がダイアグラムに追加され、継承の依存関係のみが視覚化されます。公開 API の場合、ダイアグラムには、指定された型を返すメソッドを含む型と、型の依存関係のみを返す型が表示されます。

  • 検索結果ウィンドウまたは型階層に表示される結果のリストで、ダイアグラムに表示する Show on Diagram をクリックします。

    このような場合、すべての使用箇所または階層エントリがダイアグラムに追加され、使用箇所 / 継承の依存関係が視覚化されます。

新しく作成された型依存関係ダイアグラムが階層ウィンドウの新しいタブに表示されます。

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

ダイアグラムの表示を調整する

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

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

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

ダイアグラムの左側にある対応するセレクターを使用して、これらのオプションを切り替えることができます。

ダイアグラムに型を追加または削除した後、または依存関係フィルターを変更した後にダイアグラムのレイアウトを更新するには、ツールバーのリフレッシュ ThemedIcon.Refresh.Screen.(Gray).png をクリックして、ダイアグラムのレイアウトをリフレッシュを選択します。

ダイアグラムをパンするには、ダイアグラム項目の外側のダイアグラム領域内の任意の場所をクリックし、ハンドカーソル cursor_hand.png が表示されている間にドラッグします。ズームするには、マウスホイールを使用します。ダイアグラム領域の左上隅にあるコントロールを使用して、ズームやパンを行うこともできます。

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

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

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

  • ダイアグラム内のグループ化項目を選択し、Ctrl + Left ArrowCtrl + Right Arrow を押します。

ダイアグラムの項目を追加および削除する

いつでも、表示されたダイアグラムを変更して、必要な型だけが表示されるようにすることができます。

必要に応じて、元に戻す ThemedIcon.Undo.Screen.(Gray).png をクリックするか、Ctrl+Z を押すことで、ダイアグラムで行われた変更 (追加 / 削除された項目) を段階的に元に戻すことができます。元に戻すコマンドを元に戻すには、やり直し ThemedIcon.Redo.Screen.(Gray).png をクリックするか、Ctrl+Y を押します。

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

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

  • 型、フォルダー、プロジェクトをソリューションエクスプローラーからダイアグラムにドラッグアンドドロップします。

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

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

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

    Adding types to the type dependency diagram

    型を選択して Enter を押すか、型をクリックしてダイアグラムに追加します。ドロップダウンで緑色でハイライトされている型は、すでにダイアグラムに追加されています。このような型を選択すると、ダイアグラムのフォーカスがその型に移動します。

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

特定の型とコンテナーを研究する

ノードが折りたたまれている場合、ノードの上にカーソルを置くと、内部にあるものをすぐに確認できます。表示されるポップアップで、このノード内のダイアグラムに追加された型の数と、このノード内から参照されるすべてのモジュールを確認できます。

Studying projects and containers

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

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

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

型の詳細ポップアップでは、指定された型が使用する型、型が使用される場所、継承された型、コンストラクターパラメーターで使用される型などが表示されます。

型に XML ドキュメントがある場合は、ポップアップに概要も表示されます。

関連する型をクリックしてダイアグラムに追加できます。緑色でハイライトされている型は、すでにダイアグラムに追加されています。そのような型をクリックすると、ダイアグラムのフォーカスがその型に移動します。エディターで型自体を開くには、その名前の横にある宣言に移動をクリックします。

Details of a specific type on the Type Dependency diagram

型間の依存関係を調査する

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

  • 集約の依存関係 — 型が他の型のコレクションまたはコンテナーである場合に、ある種の依存関係を表示します。

    この種の依存関係は緑色の点線で示されています。対応するフィールドの名前が行の横に表示されます。この行の上にマウスを置くとフィールド宣言が表示され、エディター内の対応する場所に移動できます。

  • 依存関係を使用する — ある型の変数、パラメーター、メソッドの戻り値が別の型で使用されている場合、一種の依存関係を表示します。

    この種の依存関係は青い線で示され、その太さは相対的な使用回数を反映します。この行の上にマウスを置くと、使用箇所のリストが表示されます。

    dotPeek: Usage dependency

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

  • 継承の依存関係 — ある型が別の型を拡張または実装するときに、一種の依存関係を表示します。この種の依存関係は、濃い緑色の線で示されます。この行の上にマウスを置くと継承関係が表示され、エディター内の対応する場所に移動できます。

    推移的な継承の依存関係は破線を使用して示されています。そのような線の上にマウスを移動し、ポップアップを使用して依存関係が通過する型を確認し、それらの型をクリックしてダイアグラムに追加できます。

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

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

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

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

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

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

ダイアグラムをファイルにエクスポートする

依存関係を調べている任意の時点で、次のツールバーボタンを使用してダイアグラムをファイルにエクスポートできます。

この機能は、Microsoft Visual Studio の開発者生産性ツールである JetBrains ReSharper に触発され、そこから借用されています。

関連ページ:

これを調べる

このコマンドは dotPeek のコード探索とインスペクション機能への近道です: 型階層を調べる、型依存関係ダイアグラム、このコマンドは、アセンブリエクスプローラー、ファイル構造ウィンドウ、その他のツールウィンドウから呼び出すことができます。コンテキストに応じて、このショートカットは、そのコンテキストで利用可能なすべてのコード探索機能にアクセスできます。コンテキストで利用可能なコード探索機能を表示するコードビューアーのシンボルにキャレットを配置するか、ツールウィンドウでシンボルを選択します。ボタン...

次に移動: API の公開

このコマンドを使用すると、ある型から、その型のインスタンスを取得できる現在読み込まれているアセンブリ内のすべての場所 (パブリックフィールドとプロパティ、メソッドの戻り値、出力パラメーターなど) に移動できます。このコマンドは、現在読み込まれているアセンブリの宣言または任意の型の使用箇所に対して次に移動を呼び出すと使用可能になります。このコマンドは、アセンブリエクスプローラー、ファイル構造ウィンドウ、その他のツールウィンドウから呼び出すことができます。コマンドが単一の結果を返す場合、dotPee...

検索結果を分析する

dotPeek のナビゲーション操作と検索操作で複数の結果が得られた場合、これらの結果を検索結果ウィンドウに表示することができます。検索結果ウィンドウは、検索結果を分析するためのさまざまな方法を提供します。使用箇所の検索などの一部のアクションでは、このウィンドウに結果が自動的に表示されます。その他のアクションについては、検索結果のポップアップが表示されたときに手動で行うことができます。検索結果に表示をクリックし、テンキーの Shift+Enter または + を押します。新しいナビゲーションまたは検索ア...

型階層を調べる

dotPeek を使用すると、タイプの継承階層を調査できます。選択したタイプの基本タイプと継承の両方を表示し、マウスクリックでそれらのいずれかに移動できます。階層内の任意のノードについて、プレビューペインにすべてまたは多形メンバーのみを表示できます。階層を調査するコードビューアーで目的のタイプを見つけるか、アセンブリエクスプローラーでそれを展開します。を押すか、メインメニューからを選択します。または、を押して、ポップアップにコマンド名を入力し、そこで選択することもできます。階層ウィンドウに追加...

階層ウィンドウ

階層ウィンドウには、コードのいくつかの型階層構造が表示されます。型階層、型依存関係ダイアグラム、アセンブリ依存ダイアグラム、参照の階層、型階層:このビューには、メンバーを含む型階層と、特定のタイプのすべてのサブタイプおよびスーパータイプのリストが表示されます。階層を分析し、ダブルクリックして任意の型の宣言に移動できます。ツールバーコントロールリフレッシュコードの変更を外部に反映するためにウィンドウの内容を更新します。これをベースに選択されたタイプが階層ツリーのルートになり、それに応じてツリーが

次に移動

次に移動は、ほとんどのナビゲーションニーズに対応する 1 つのショートカットです。コンテキストに応じて利用可能なすべてのナビゲーション宛先を含むリストが開きます。このコマンドは、アセンブリエクスプローラー、ファイル構造ウィンドウ、その他のツールウィンドウから呼び出すことができます。コンテキストで利用可能なナビゲーションアクションを表示するコードビューアーでシンボルにキャレットを配置するか、ツールウィンドウでシンボルを選択するか、コードビューアー内の任意の場所にキャレットを配置します。を押すか、メ...