First look: Visual Studio 2010 Beta 1 teases
Microsoft's IDE reveals a cleaner look, IntelliSense and Designer improvements, even parallel programming support, but some promises still achingly unfulfilled
As I said in my review of Visual Studio 2008 in January 2008 and repeated in my SP1 review in August 2008, Visual Studio is the premier IDE for developing applications with the Microsoft .Net Framework and at least a contender for the best Windows-hosted C/C++ IDE. At the same time, despite my glowing endorsement, I quibbled about a few deficiencies in the product; in my later Silverlight 2.0 review in November, I went on to complain that the XAML designer added to Visual Studio by the Silverlight toolkit only had a preview pane rather than a full-blown designer.
Microsoft must be sick of hearing me bitch and moan and ask for the next thing when the company has just delivered something nearly great. And yes, I'm going to do it again, but understand that I wouldn't spend the energy to ask for the next step if I hadn't found the product useful. So let's start with the high notes.
[ See the Lab Notes blog for a scrolling tour of Visual Studio 2010 highlights. See Martin Heller's Strategic Developer blog for further Visual Studio 2010 beta notes and ongoing coverage of Microsoft development technologies. ]
Visual Studio 2010 (VS2010) has a revamped user interface that looks much cleaner than previous versions of Visual Studio, and uses Windows Presentation Foundation (WPF) rather than Windows Forms. I like the way this works, at least on a computer with plenty of RAM and a good graphics board. I give the UI a big thumbs-up. I'm told that the UI also supports multiple monitors, but I don't have the hardware configured to try this myself.
Not surprisingly, the WPF designer is even smoother than before. Additionally, you can now generate data-bound WPF controls by dragging items from the Data Sources window to the WPF designer. Even better, the XAML designer for Silverlight achieves parity with the WPF designer; you no longer need to switch out of Visual Studio to Expression Blend to work on a XAML design visually.
The new code browsing features are another win. Once you've learned to use Ctrl-Scroll to zoom in and out on the screen, you don't even think about it. Once you've learned the Navigate To shortcut (Ctrl-Comma) and the Call Hierarchy navigation, you'll wonder how you got around your projects before.
Debugging and TDD
VS2010 has much improved thread debugging; given the increased support for multithreading and parallelism, this is a necessity. Toolboxes and IntelliSense are now sensitive to the Framework version of your target project, so you don't have to wait until compile or runtime to discover that you've used a feature unsupported by your target. Again, given the increased number of possible targets, this is a necessity.
Visual Studio has supported test-driven development for years, but it was always awkward to create new stubs and to synchronize IntelliSense if you actually wrote the tests first. Now you can switch into consume-first mode to keep IntelliSense from running amok, and you can generate stubs from their usage.