CppDepend和NDepend都是由同一家公司开发的,似乎基于相同的代码库,并共享一些功能。我还没有找到一个并排的比较网站。
我研究了几个完全没有任何c++代码的普通c#解决方案,但也有一些解决方案,除了c#之外,还包含c++托管代码和c++本机代码。
如果我想要所有项目类型的完整功能集,我真的需要购买这两个工具吗?是否需要用CppDepend打开我的混合解决方案,用NDepend打开仅限c的解决方案?NDepend似乎无法分析c++项目,但当我用CppDepends打开解决方案时,我在同一解决方案中的c#项目失去了一些NPDepend功能。如果NDepend可以将CppDepend作为插件/扩展加载,那就太好了,但这是不可能的,对吧?
NDepend分析任何.NET/IL代码,包括C++/CLI托管代码(但不包括非托管代码)。CppDepend在任何兼容C++的平台上只分析C++代码。
虽然这些工具共享大量代码,但它们是互斥的,不会以任何方式相互操作。此外,这些工具共享相同的一组功能。
如果您的大部分代码都是.NET/IL代码,NDepend应该可以满足您的需要。
如果您的代码是50/50.NET和C++非托管代码,则可能需要这两种工具。
如果NDepend可以将CppDepend作为插件/扩展加载,那就太好了,但这是不可能的,对吧?
对。