Throughout the last few weeks, I've been doing a lot of reading and talking to people to find out what they like about Visual Studio 2010 and what incentive there is to upgrade to it. I spent a small amount of time with the pre-release versions (but only for basic work), and I did not see the huge differences. But after closer investigation, Visual Studio 2010 does indeed look like a worthwhile upgrade.
One of the first things to note is that Visual Studio 2010 allows you to write code against multiple versions of the .NET Framework and CLR; this means that, even if you still need to work on .NET 3.X or 2.0 code, you can upgrade from Visual Studio 2008 to Visual Studio 2010 and still be able to work on .NET 3.X applications and .NET 2.0 applications.
Some of the features in Visual Studio 2010 and .NET 4 that look really useful are:
- IntelliTrace, which allows you to "rewind" the application to debug
- Multiple monitor support (it's about time)
- Vastly improved debugging for parallelism
- Significantly improved support for XAML
- Better support for jQuery and other client-side technologies
- Local Team Foundation Server installations (this is awesome for lone developers or developers in small shops)
- Parallel Extensions Library
- F# built into the system
One person I talked to is Brian Hitney, a Microsoft Developer Evangelist who mainly works with ASP.NET. He told me that it is much more pleasant to work in ASP.NET in Visual Studio 2010. Something he said that stuck out is, "you don't feel like you're fighting the system." One reason why I never really liked ASP.NET much is that it always felt like I was fighting the system to do what I wanted it to do. Brian pointed out that in ASP.NET 4, you can finally control the IDs that WebControls get, and the web.config files are much smaller and manageable now.
Another person I spoke with is Tim Huckaby, an MVP and the CEO of InterKnowlogy, a company that specializes in WPF applications. He had some interesting insights to share, since his perspective is that of someone who is using cutting edge technologies in real-world scenarios. He drove home that the WPF and Silverlight story is totally changed now; there is substantially less need for Blend, and you can do applications that use the basics of XAML without Blend at all (Visual Studio 2008 supported XAML, but did not have a good visual designer).
In addition, Visual Studio 2010 ships with the Metro theme, which is what Windows Phone 7 uses. This means that you can start writing apps today that will look like apps will look on Windows Phone 7; this is great news if you are planning on supporting Windows Phone 7 when it releases. He also stated that it is much easier to work with WCF.
Tim mentioned that Visual Studio 2010 is much, much better at working with SharePoint; in fact, there is no longer a separate SharePoint development tool. While I have never worked with SharePoint on the development side, I've noticed that SharePoint development has quietly become a huge market in the last few years.
Visual Studio is also the first version to ship since ASP.NET MVC, ADO.NET Data Services (aka OData), Silverlight, and a whole host of other technologies have been released. In the past, support for these other technologies was spotty, in CTP status, or non-existent; now, Visual Studio supports them. If you pay attention to Microsoft's releases, they tend to follow a pattern of "revolution" followed by "consolidation of gains." For example, Windows Vista changed the playing field with Aero, WPF, UAC, and a lot of other new technologies. Windows 7 refined Windows Vista and made it useful and usable. In the same vein, I always felt that some of the new technologies in Windows Vista, .NET 3.X, and Visual Studio 2008 were not well supported, implemented, or documented. Well, now it seems to be there, and properly too.
Another important note is that there is no longer the division of Visual Studio into Team editions; there is simply the Ultimate Edition, which combines all of the functionality that the Team editions had into one package. Speaking of editions, Microsoft is still offering Express editions for folks looking to experiment for free with .NET.
I think that Visual Studio 2010 has something to offer for everyone. While I have not tried out every single one of its new features, I have switched to it since it RTMed, and it has been a joy. Despite the change to using a fully WPF UI, it still feels very familiar. Other than some changes when I upgraded from the June 2008 CTP of Parallel Extensions to the version released in .NET 4 (I just needed to change a using statement and one class name), I have not had any issues transitioning a decent-sized project from .NET 3.5 to .NET 4.
I look forward to working with Visual Studio 2010; it feels like Microsoft is finally giving us the proper support for technologies that were released years ago. Take it for a test drive by downloading the Visual Studio 2010 trial versions today!
J.JaDisclosure of Justin's industry affiliations: Justin James has a contract with Spiceworks to write product buying guides; he has a contract with OpenAmplify, which is owned by Hapax, to write a series of blogs, tutorials, and articles; and he has a contract with OutSystems to write articles, sample code, etc.
---------------------------------------------------------------------------------------Get weekly development tips in your inbox Keep your developer skills sharp by signing up for TechRepublic's free Web Developer newsletter, delivered each Tuesday. Automatically subscribe today!
Justin James is the Lead Architect for Conigent.