問題タブ [ndepend]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ndepend - NDepend:依存関係グラフに「層」アセンブリを表示しない方法は?
以前のバージョンのnDependで、[ツール]-> [オプション]に移動し、分析の一部となるアセンブリを設定することでこれを行うことができました(残りは無視します)。nDependの試用版の最新バージョンでは設定できますが、設定を無視し、必要かどうかにかかわらず、常にすべてのアセンブリを分析しているようです。「層」アセンブリを「アプリケーションアセンブリ」リストに移動して削除しようとしましたが、そこから削除すると、「層」リストに追加されるだけで、無視できません。
依存関係グラフに「system」、「system.xml」、「system.serialization!」などのアセンブリを含めたくありません。依存関係グラフにMYアセンブリのみが必要です!それとも、今は有料版の機能ですか?
私が話していることをする方法はありますか?
ndepend - NDepend を使用したアセンブリの依存関係
マシンに .NET 2.0 と .NET 4.0 をインストールしています。小さな .NET 2.0 プログラムを作成します (1 行のコンソール出力のみが含まれます)。NDepend を使用してアセンブリの依存関係を確認すると、プログラムが .NET 2.0 アセンブリ (mscorlib 2.0) ではなく .NET 4.0 アセンブリ (mscorlib 4.0) に依存していることがわかります。
ありがとう、
アント
properties - NDepend を使用してどのプロパティ ゲッターに副作用があるかを調べるにはどうすればよいですか?
VisualStudio のよくある問題は、プロパティ ゲッターの不思議な呼び出しです。これらに副作用がある場合 (最も一般的な形式はif (foo == null) foo = new foo(); return foo;)、デバッガーの [ローカル] ウィンドウと [ウォッチ] ウィンドウがブレーク ポイントに到達することなくプロパティを呼び出すという事実により、デバッグ時に予期しない影響が生じる可能性があります。
これには簡単な解決策があります。属性でプロパティにタグを付けるだけです
では、大規模なコード ベースで副作用が発生する可能性のあるゲッターを見つけるにはどうすればよいでしょうか。
NDependは、この種のツールとして最適です。その CQL 言語を使用すると、たとえば、含まれているインスタンスの状態を直接変更するすべてのプロパティを見つけることができます。
これは、フィールドを直接変更する getter のみを検索しますInitialize()。メソッドを呼び出すなどして間接的に変更する getter を検索するにはどうすればよいですか?
c# - How do I programatically create an NDepend project file?
To start, this may be a useful link: http://www.ndepend.com/NDependConsole.aspx
As anyone who has used Visual NDepend may know, with NDepends you need to import project / solution files, and the corresponding output directories, namespaces, and assemblies are added to the NDepends project.
The problem I have, is I have TONS of these projects and solutions to add. It seems ridiculous to sit there for 45 minutes adding 300 solutions click by click. There must be a way to create an NDepend project file from a list of the paths to these solution / project files.
My first thought was to find the same information NDepends does (output directories, used namespaces and output executables dll's, etc) and programmatically create the NDepend project as a massive string. However, this seems like unnecessary work.
It would be nice if there was a way to invoke the command line and target specific projects, not output directories, as some of the projects have PostBuild tasks to copy assemblies to different directories, some projects specify the output directory as an upward relative path (ie ....), and so it isn't safe to assume that the output directory of a project is the same directory it is in.
Any ideas?
c# - NDepend を使用してキャストをカウントできますか?
オブジェクトをインターフェイス (IFoo など) として渡し、コード内の任意の場所でそれらをそれらのインターフェイスの具体的な実装 (MyConcreteFoo など) に自発的にキャストする傾向がある継承コードがあります。
これはばかげた例です:
私がやりたいのは、NDepend CQL クエリを記述して、これらの種類のキャストを取得し、メソッドごと、タイプごと、または実際に何かをカウントすることです。キャストを無作為に探してコードを調べさせるのではなく、この特定のブランドの愚かさを取り除くためにどこから努力を集中できるかを知っているだけです...
それを行う方法があるかどうか誰かが知っていますか?私はそうではないと思います(その特定の機能を必要とする人が多すぎることはあり得ません)が、最初にここで質問することにしました... :-)
もちろん、キャストハンティングを高速化する方法に関する他のアイデアも同様に高く評価されます.
.net - NDepend - 間接的に依存するライブラリを検出する
私は次のサンプルプロジェクトを行いました:
SubClassLibrary - .Net Framework 以外の DLL を使用しない
ClassLibrary - これは SubClassLibrary を使用します
メイン プログラム - これは ClassLibrary を直接使用します
メイン プログラムのソリューションで NDepend を実行すると、「ClassLibrary」への依存関係のみが検出され、「SubClassLibrary」への依存関係は検出されません (ClassLibrary 経由)。
「ClassLibrary」を「アプリケーション アセンブリ」(NDepend のプロジェクト設定内) に移動すると、依存関係が見つかります。
「サブ」依存関係を解決する他の方法はありますか?
ありがとう、ヨハネス
ndepend - NDepend は新しい参照アセンブリを自動的に取得できません
自動ビルド プロセスで使用している NDepend プロジェクトがあります。開発者がプロジェクトにもう 1 つのアセンブリを追加すると、NDepend はそのアセンブリを自動的に取得して分析することができません。NDepend プロジェクトに手動で追加した場合にのみ、新しいアセンブリが表示されます。新しい参照アセンブリを取得して自動的に分析するように、NDepend プロジェクトで構成するにはどうすればよいですか。とにかくそれを行うことはありますか、それともNDependの使用に何か問題がありますか?
ありがとう、
アリ。
.net - NDepend - Several .NET assemblies have the name {MyAssembly} but they are different
I've just started using NDepend and am trying to analyse a solution.
This warning appears when I add the solution's assemblies and it will not load any assemblies with the warning:
Cant' load the assembly {MyAssembly}: Several .NET assemblies have the name {MyAssembly} but they are different: ...list of the .dlls in the project which contain this assembly
What could be causing this? I am using a common AssemblyInfo.cs file as well as the standard one to set some common attributes but there are no conflicts between these attributes.
ndepend - CQLを使用して特定のメソッドを実装する型を見つける
NDEpend で組み込みのデッド コード クエリを改良していますが、スタンドアロン プログラム (つまり、Main() エントリポイントを使用) から多くの誤検出を見つけています。
組み込みの未使用の型クエリに次の句があることに気付きました。
のようなものを書くことは不可能ですか?
代わりは?それは私が本当に選びたいものです。
c# - テストによってのみ呼び出されるコードを見つける方法
時々私はいくつかのコードを見ています、私はメソッドの使用法を検索し(resharperを使用して)、それがテストによってのみ呼び出されることを発見します。したがって、これは事実上冗長であり、それとそれを呼び出すメソッドを削除できます。
明らかに、未使用のコードをその場所に置いて、ビルドとテストの実行を遅くしても意味がありません。私が欲しいのは、テストによってのみアクセスされる本番コードのすべてのビットがどこにあるかを教えてくれるツールです。
私はresharperのフルバージョンとNDependの試用版を持っていますが、これらのいずれかを使用して(料金を支払わずに)希望する結果を得る方法がわかりません。フルバージョンのNDependで可能かもしれないと思いますが、他に知っているツールはありますか?
コンテキストが役立つ場合、解決策はASP.net Webサイトであり、その機能の多くはWCFサービスによって処理されます。したがって、コードの大部分への唯一の有効なエントリポイントはサービスメソッドです。テストは、独自の個別のプロジェクトで行われます。
他の誰かが以前にこの問題を抱えて解決したに違いないと確信しているので、私は賞金を始めました!