質問

っていう NDepend, れの読みの数blogpostsでも聞いていpodcast.ると思いNDependすが、本当に有用なツールがいまだにわからない見えないのが混雑して待たされることです。

使い分けが面倒くさくないのですか?利益上の運用収支等の利回りが、いかがでしょうか?はいかがでしょうか?

聞いてみたいと思いつも地道な実例です。

役に立ちましたか?

解決

に使用しましたNDepend広く、過去数年間です。基本的に、依存関係の解析ツールで、このお手伝いをすることができ多くの依存関係の課題です。

の主なものを用い調査を行い依存関係は私のアセンブリ、タイプ。これを見るかどうか結合型は、もうスポットのリファクタリングす。

が始に大refactorなど解凍します移動種類のアセンブリ、ことができますどのようないの"を動かの種類別組みを通じて、コンパイル、休憩"

NDependも視覚的にマトリックスこのような情報です。

また、この幻想的なクエリー言語CQLは、き書きのカスタムクエリ.これらのできる簡単なもの"などを表示すべてのメソッドがこのメソッドを呼び出、照会へ死者コード、クエリcylcomaticの複雑さ、カップリングなどなど充実しています。

立地として集積することができ構築プロセスできるので、build警告/失敗に基づくCQLクエリーなどの"失敗の場合の方法は、100以上のラインのコードがコメント"(一例です-んがこの特定の指標ができないと何もうまくいかない).

でも輸入コード-カバレッジデータときの視覚的な表現領域の少ないコード-カバレッジときに実行CQLのクエリに対しコード-カバレッジなどの情報表示方法以下70%のコードインタレスト-カバレッジ)

また負荷を現在構築プロジェクトは、前回のビルドや実行のクエリとして"などのショーってあえぐ者はみな、私のところ 新しい とり <70%コード-カバレッジ"って-これを導入しているルールの厳格化、既存のcodebases.

この幻想的なツールでしかできない困難を学ぶことができます。で怖いのは、この点について数量の情報ですが、お勧めします。

他のヒント

私はまた、複雑なメソッド呼び出しの構造を理解する上で、それは非常に貴重な発見します。私は、例えば、推移特定のメソッドまたはフィールドを使用してすべてのメソッドを呼び出すことができ、そして必要以上に入り組んである円形の呼び出し、または望ましくない依存関係、またはパスを持つ可能性のある問題、等があるかどうかを確認することができます。

依存関係グラフは今も、対話型であるので、私は、私は、現在では興味がないメソッドを削除し、何が起こっているかの良い可視化を与えるために他人を動き回ることができます。

私は、アセンブリのバージョン間の変更を視覚化することが有用であることが分かってきました。でも、特定のリリースにおける変更のスナップショットのために...

私はそれはあなたが(循環的複雑度、ロング法など)に興味を持っているコードメトリクスを測定するためのCQLクエリを設定することができます継続的インテグレーション環境で輝くと思うし、その後、あなたは以上のこれらの地域では、あなたの改善を測定することができます時間ます。

あなたが持っている場合、例えば

実際にこのツールが便利です別の人/ベンダによって開発されたアプリケーションの別の部分によって使用されるインタフェース。あなたはそのコードを壊す避けるために、あなたのインターフェイスを使用している人を見つける必要があるインターフェイスを変更したい毎回(アセンブリがビルドされません) これは大きなプロジェクトに適用されます。

このツールは、アプリケーションがアセンブリの膨大な数を持っているときに便利です。 それは私がリリース間のコードの依存関係と同様の変化を見つけることができます。

私はまた、いくつかのアセンブリの2つのバージョンを比較するNDependのを使用しています。この優秀機能を備えていNDependの。ザッツは私に変更し、アセンブリ内の作業の進捗状況、追加されている方法、取り出し方法や、より多くについてのビューを提供します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top