Monday, 31 March 2014

Ten Cool Things You Didn't Know About Visual Studio 2010

Ten Cool Things You Didn't Know About Visual Studio 2010

 I'm sharing the ten most useful of these in this article.

1. Pin variables when debugging

At debugging when hovering over variables the "Pin variable" option appears. Clicking on this makes the variable stick next to the source code until removed (and the pin stays there between debugging sessions). It is a really hand utility eliminating having to add variables to the Watch window one by one or search through the Locals window to find the variable one's looking for. Definitely one of the top 3 new features I use on a day to day basis!

2. Box selection

While holding down the Alt key box selection can be made on the screen. At first glance this feature doesn't seem to useful. However when typing anything in the selection the same text appears in all lines. So this selection is extremely useful for mass renaming of e.g. visibilities or anything else that involves changing the same thing in all lines.

3. Search on-the-fly

When pressing Crtl and , (comma)  the new Navigate To window appears. This is a real-time search window offering basically the same functionality as the Find and Replace window (opened by Crtl + Shift + F) but doing it on-the fly, without having to wait seconds for search results. So the list of results updates the moment you type the next letter in your search expression. Scott said that the search database used by this window is built continously in the background by Visual Studio.

4. Zooming

There's a small zoom drop down box on the left bottom of the application. It's barely noticeable but is really useful when showing your code to someone else or doing presentations. Not a function you'll use too often but comes handy every once in a while!

(Note: zooming can also be used with Crtl + mouse scroll)

5. View Call Hierarchy

Exploring code has been made much easier with the new View Call Hierarchy command in the context menu when right clicking a method. The Call Hierarchy window shows calls from the method, calls to the method and overrides of the method (if any). This little add-on makes exploring someone else's code so much easier.

6. Sequence Diagrams

The professional and above versions of Visual Studio 2010 come with built-in sequence diagram generation functionality. Simply right click on the method and select Generate Sequence Diagram to get a nifty call sequence diagram.

7. Dependency Graphs

The professional and above versions of Visual Studio 2010 come with a built-in dependency graph generator that generates an interactive, browsable dependency graph. When there is a large number of object this graph can get overwhelmingly large. However the fact that it can track dependencies at assembly, namespace and class level as well make it a useful tool for getting an idea for the project dependencies.

8. IntelliTrace and Dump Debugging

Ever had clients submitting bug reports that you were unable to reproduce and made you wish you could just debug right on their machine? IntelliTrace brings this to reality. When running an application with IntelliTrace enabled it records the series of events happening within it and lets the developer play these back. Note however that IntelliTrace collects less information than one might need at debugging and also has a slight performance overhead when turned on. IntelliTrace is only available in Visual Studio 2010 Ultimate. For more information on Intellitrace see MSDN.
Dump Debugging is the feature that enables to open dump files from production machines and debug those. This is a great feature to use for debugging crashes happening on a production machine. See a video on how to use this feature on Channel 9.

9. Multi-monitor support

Few people knew that Visual Studio 2008 actually had multi-monitor support. You just had to launch an instance on each monitor! Aside from this joke, this feature was one that was really wanted. Now windows can be positioned across monitors making developing and debugging a much better overview on dual screens.

10. Intellisense - lots of small improvements

Intellisense has gone through lots of small improvements. The most important ones are:
  • When selecting any variable all instances of it are highlighted - a well needed improvement that has been around for in lots of text editors
  • Search is not limited to prefixes any more, it is done within strings. So when typing time for example, DateTime will be offered as well (previously only names starting with time were)
  • Intellisense can search just knowing the capital letters of a class. When searching e.g. for HttpCachePolicy it's enough to type HCP - nice!
  • Javascript intellisense is extensive: all major Javascript libraries are supported (JQuery, Ext.JS, Prototype). Expressions are also evaluated on the fly and Intellisense is offered accordingly.

No comments:

Post a Comment

The Future of Remote Work, According to Startups

  The Future of Remote Work, According to Startups No matter where in the world you log in from—Silicon Valley, London, and beyond—COVID-19 ...