Debugger Canvas is a new user experience for the debugger in Visual Studio Ultimate. It pulls together the code you’re exploring onto a single pan-and-zoom display. As you hit breakpoints or step into code, Debugger Canvas shows just the methods that you’re debugging, with call lines and local variables, to help you see the bigger picture. Code debugging with code bubble is easy now! :) If object change state we can see updates easily. The Debugger Canvas is built on technologies that only ship with Visual Studio Ultimate, such as IntelliTrace and the code analysis features in the Architecture tools.
Canvas Debugger pulls together all the code along a call path into a single display for browsing and even editing. Instead of having to keep all the code in your head while you look at one file tab at a time, now you can see the entire path on the canvas, enabling you to more easily track the flow of control and data through your application.
We can save xps file and share how we fix bug to other team members. Below, you can see an example where we have stepped into the execution of the Add Item function of a website shopping cart. The functionality requires the coordination of several methods, and the canvas lets you see them side by side so that you can more easily find and fix bugs.
Debugger Canvas is the result of collaboration with Brown University and Microsoft Research, incorporating innovative ideas from Brown’s Code Bubbles and Microsoft Research’s Code Canvas. Cutting edge research is being done at Brown and at other universities around the world to help improve development team productivity and software quality.
Debugger Canvas also highlights the potential of several of the technologies we introduced in Visual Studio 2010 Pro and Ultimate. It takes advantage of the flexibility of the new code editor to show fragments of files as bubbles on the canvas with a fully functioning editor in each. Debugger Canvas on top of Visual Studio Ultimate so that we could also use the underlying technology for the Dependency Diagrams to identify and display the right fragments on the canvas. This let us support both C# and VB in this release and will help us support other languages in the future. Building on VS Ultimate also allowed us to provide a new user experience for IntelliTrace, enabling some interesting scenarios, such as “show me what code ran when I clicked here”.
Debugger Canvas is the result of a collaboration between Brown University and Microsoft, integrating ideas from Brown University’s Code Bubbles project into Visual Studio. This is what you can do in this version of Debugger Canvas:
- Step into methods on a canvas using the debugger
- Use the normal debugger features in the canvas
- Share a canvas as an XPS image
- Take snapshots of local variables so you can make comparisons as you step through code multiple times
- Add related methods to the canvas using Go to Definition and Find All References
It also has some more features that are under development and which you can turn on if you’d like to try them: Edit code directly on the canvas (including edit and continue if available) by enabling the option in the options dialog and Visualize IntelliTrace logs as fragments on the canvas, or step through IntelliTrace logs using the canvas. Power tool is trying out these use interface features to see how they work in real life development situations. And depending on your feedback, some of this may very well make it into a future version of Visual Studio! Code navigation and editing are switched off by default when Debugger Canvas is installed. To switch on these features, use the menu item Debug / Debugger Canvas / Options... and check the second and third checkboxes:
Visual Studio 2010 ultimate rocks!!! But Debugger canvas is still has perfomance problems, it is really eat a lot of memory from your machine. I will be waiting for updates on this feature, because now it takes a while to create all this fancy diagrams :( What do you think about this Intellitrace feature - Debugger Canvas?