新しいコードに直面するとき、私はよく時間をかけて、アンビエントなものとは対照的に、コア機能を構成するクラスとメソッドを見つけます。コードがよく知られているアーキテクチャ設計に準拠している場合、目に見える構造、わかりやすい名前、ドキュメント、単体テストなどがある場合、タスクはより簡単になります。ただし、常にそうであるとは限りません。コードが単なるパスタで、そこで何が起こっているかは神のみぞ知ることもあります。
コード部分を大まかに分類して、開発者が手動処理なしで重要なものを一目で確認できるようにするために使用できるアルゴリズムがいくつかあると思います。
例えば:
- ビューとビュー モデルの場合、開発者がエントリ ポイントを確認できるように、ツールは後でバインディングを強調表示できます。
- メソッドとクラスの使用は、呼び出しチェーンのあるレベルで発生します。一部のメソッドは、ロジック内でのみ呼び出すことができます (優先度が低い)。その他は、ユーザー アクション ハンドラーから直接呼び出されます (高優先度)。
コードの重要度に応じて、Visual Studio のクラスとメソッドをフィルター処理または強調表示できるツールはありますか?
次のようになります。
重要性の下で、たとえば、Main
メソッドは他のすべてのルートであるため、メソッドの重要性が高いことを理解しています。Main
メソッドからコード内の他のメソッドに移動できます。MethodL2
単なる葉であるため、重要度は低いです。葉の重要度の計算は、親の重要度からも導出する必要があります。この意味での重要性は、深さや発生のレベルだけではありません。