As you might have read before on my blog, I am a happy user of NDepend. It gives you insights in your code that you as a developer has never thought of. We are always too busy getting that next feature built in that we hardly have time to write our unit tests. That moves having time to analyze our code even further away from reality.
Build server integration
One of the features of NDepend 6 that I like is that it can automatically check the quality of the code after each build. But what I was missing was real build server integration. It still required me to open up NDepend and analyze the assemblies manually. With the new version, build server integration has been implemented so this is really nice! Even users that are not running NDepend on their machines (but are contributing) can see the results because of the build server integration.
NDepend versus ReSharper
I also heavily use ReSharper. This doesn’t mean you can stop using NDepend. Where ReSharper gives you a lot of information during software development (and helps you refactor stuff), NDepend gives you a nice (graphical!) overview of your code quality. For example, it tells me about potentially dead methods:
And besides the full solution analysis, it can also be integrated into Visual Studio and directly show you the results of the whole solution!
How does this all relate to Catel
You might be thinking: why reference Catel in the title. Catel is a very large solution (over 100 projects) and for me it’s the ultimate test for NDepend. Every software package can be used on simple projects, but even ReSharper starts hicking up with Catel. NDepend has no issues with analyzing the big solution though, and it does help me manage the complexity of the solution.