NDepend tool – Why every developer working with Visual Studio.NET must try it!

In the past two months, I have had a chance to test the capabilities and features of the amazing NDepend tool designed to help you make your .NET code better, more beautiful and achieve high code quality. In other words, this tool will definitely help you harmonize your code. I mean, you’ve probably heard about Chaos Theory. Experienced developers and architects are already advocates of the programming chaos that happens when working with complex project architecture, the matrix of relationships between objects which simply even if you are the one who have written all that code, you know how hard is to visualize everything what does the code do. When the application get more and more complex, you will start missing a lot of details in your code… NDepend will help you visualize all the details on a clever way that will help you make smart moves to make your code better.

The NDepend tool supports many features, such as:

  1. Code Query Language – which will help you write custom rules and query your own code! Imagine, you want to find all your methods which have more than 100 lines of code :)! That’s something simple! However, I will dig much deeper in one of my next blogs which I’m going to dedicate to the NDepend’s CQL (Code Query Language)
  2. Architecture Visualization – You are an architect and want to visualize your application’s architecture? I’m thinking how many architects will be really surprised from their architectures since NDepend shows your whole architecture showing each piece of it. NDepend will show you how your code is structured. It shows the architecture in graphs, but if you have very complex architecture, you can see it in Dependency Matrix which is more suited to display large architecture
  3. Code Metrics – Using NDepend’s panel, you can see the code base according to Code Metrics. You can do some additional filtering, like selecting the top code elements ordered by their current code metric value. You can use the CQL language for this purpose too.
  4. Smart Search – NDepend has great searching ability, which is again based on the CQL (Code Query Language). However, you have some options to search using dropdown lists and text boxes and it will generate the appropriate CQL code on fly. Moreover, you can modify the CQL code if you want it to fit some more advanced searching tasks.
  5. Compare Builds and Code Difference – NDepend will also help you compare previous versions of your code with the current one at one of the most clever ways I’ve seen till now.
  6. Create Custom Rules – using CQL you can create custom rules and let NDepend warn you on each build if you break a rule
  7. Reporting – NDepend can automatically generate reports with detailed stats, graph representation, dependency matrixes and some additional advanced reporting features that will simply explain you everything related to your application’s code, architecture and what you’ve done.

And that’s not all. As I’ve seen, there are many other features that NDepend supports. I will dig more in the upcoming days and will blog more about it.

The team who built the NDepend have also created good documentation, which you can find on the NDepend website.

On their website, you can also find some good videos that will help you get started quite fast. It’s easy to install and what is very important it is fully integrated with Visual Studio.

To get you started, you can watch the following Getting Started Online Demo and Tutorial with explanations and screenshots.

If you are interested to know more about how to use the features of this tool, either visit their website or wait for my next blogs where I will show some real examples of using the tool and how it helps make your code better.

And the last thing for this blog, I would like to copy one sentence from the NDepend’s home page which says: ‘Hence the software design becomes concrete, code reviews are effective, large refactoring are easy and evolution is mastered.

Website: www.ndepend.com
Getting Started: http://www.ndepend.com/GettingStarted.aspx
Features: http://www.ndepend.com/Features.aspx
Download: http://www.ndepend.com/NDependDownload.aspx

Hope you like it!

Please do let me know your feedback by providing comments to my blog post.

Kind Regards,
Hajan

NEXT - NDepend – Code Query Language (CQL)

Published Friday, December 17, 2010 7:49 PM by hajan
Filed under: , ,

Comments

# NDepend tool ??? Why every developer working with Visual Studio.NET must try it! - Hajan's Blog

Pingback from  NDepend tool ??? Why every developer working with Visual Studio.NET must try it! - Hajan's Blog

# Dew Drop – December 17, 2010 | Alvin Ashcraft's Morning Dew

Pingback from  Dew Drop – December 17, 2010 | Alvin Ashcraft's Morning Dew

# re: NDepend tool – Why every developer working with Visual Studio.NET must try it!

Friday, December 17, 2010 11:19 PM by Arun Mahendrakar

I agree with you. I've blogged about it here: weblogs.asp.net/.../depend-on-ndepend.aspx

Arun

# Twitter Trackbacks for NDepend tool ??? Why every developer working with Visual Studio.NET must try it! - Hajan's Blog [asp.net] on Topsy.com

Pingback from  Twitter Trackbacks for                 NDepend tool ??? Why every developer working with Visual Studio.NET must try it! - Hajan's Blog         [asp.net]        on Topsy.com

# re: NDepend tool – Why every developer working with Visual Studio.NET must try it!

Sunday, December 19, 2010 8:05 AM by hajan

@Arun, thank you for the comment. I already read your article previously. This tool really impressed me with it's ability to analyze the code. The real ability of this tool can be seen when you use it on complex projects.

# NDepend – Code Query Language (CQL)

Sunday, December 19, 2010 8:19 AM by Hajan's Blog

As I’ve mentioned in my first blog post , the Code Query Language (CQL) is used to help you write custom

# MS Visual Studio 2010 » Blog Archive » ???????????????? ????????????. 17.12.2010

Pingback from  MS Visual Studio 2010  » Blog Archive   » ???????????????? ????????????. 17.12.2010

# MS Visual Studio 2010 » Blog Archive » ???????????????? ????????????. 19-20.12.2010

Pingback from  MS Visual Studio 2010  » Blog Archive   » ???????????????? ????????????. 19-20.12.2010

# List of blogs - year 2010

Friday, December 31, 2010 8:26 AM by Hajan's Blog

This is the last day of year 2010 and I would like to add links to all blogs I have posted in this year

# List of blogs - year 2010

Friday, December 31, 2010 8:27 AM by Hajan's Blog

This is the last day of year 2010 and I would like to add links to all blogs I have posted in this year

# Find Code Cyclomatic Complexity with NDepend

Friday, March 25, 2011 8:06 PM by Hajan's Blog

Cyclomatic Complexity or also known as ‘Conditional Complexity’ is measurement of complexity of a program

# Find Code Cyclomatic Complexity with NDepend

Friday, March 25, 2011 9:01 PM by Hajan's Blog - MKDOT.NET

Cyclomatic Complexity or also known as ‘Conditional Complexity’ is measurement of complexity of a program

# Find Code Cyclomatic Complexity with NDepend

Saturday, March 26, 2011 2:21 AM by Find Code Cyclomatic Complexity with NDepend

Pingback from  Find Code Cyclomatic Complexity with NDepend

Leave a Comment

(required) 
(required) 
(optional)
(required)