Silverlight 4 in the dark
When it comes to web development, the main theme in Visual Studio 2010 is bringing the tools up-to-date with newer technology such as Silverlight, ASP.NET AJAX and ASP.NET MVC version 2.0. Silverlight gets a true visual designer at last, though Visual Studio 2010 will not support the much-enhanced Silverlight 4.0 on its first release. At the time of writing, the RC does not even support the preview Silverlight 4.0 tools.
There is also integration with Windows Communication Foundation (WCF) RIA Services, and integrated debugging across client and server. Windows Azure is also supported, complete with local Development Fabric for debugging.
Team Foundation Server is now part of all paid-for Visual Studio editions, has a simplified wizard-based installation, and includes the Web Access component acquired from devBiz. The idea is that even solo developers can use it for source-code management, issue tracking and build automation, while larger teams can make use of its collaboration and reporting features. Gated check-in is now supported, where code can only be checked in if it meets specified requirements.
In the high-end Ultimate edition of Visual Studio 2010, Microsoft has finally seen sense and implemented a range of standard UML diagrams, including Class, Sequence, Activity and Use Case. This edition also includes Lab Management, a powerful though complex tool that lets you create test labs from a set of virtual machines, and integrate their setup and tear down with the build process.
At last: standard UML diagramming in Visual Studio
Concurrent programming support is a consistent theme. The .NET Task Parallel Library and C++ Parallel Patterns Library let developers think in terms of parallel tasks, while a runtime takes care of scheduling and managing them. New debug windows called Parallel Tasks and Parallel Stacks let you inspect running tasks.
Visual C++ 2010 implements a number of pieces from the emerging C++ 0x standard. C++ projects now use MSBuild. Microsoft has abandoned the manifest-based approach for handling different versions of the C runtime libraries, a change which simplifies deployment.
Visual Studio 2010 includes full support for a new language, Visual F#, a functional programming language based on ML but with support for object orientation as in Objective Caml. F# is well suited to parallel and asynchronous coding, and for maths processing. The most common use is not for complete applications, but for libraries to handle appropriate tasks.
Wanted, and unwanted, additions
There are some disappointments. There is a new help system that you can set to use a local web server or content direct from the web, but that currently lacks a keyword index or complete table of contents so you are meant to navigate mainly through search. Toolbar customization is possible, but more difficult than in Visual Studio 2008. IronPython and IronRuby have not yet made it into Visual Studio, which is disappointing.
Mobile development is also currently missing, and it is not yet clear how this will look since the Windows Phone 7 development story is still under wraps, and the old Smart Device projects have disappeared.
SharePoint development, meanwhile, is touted by Microsoft as much improved, thanks to new project types and easier debugging, but you still need SharePoint installed locally, and it is annoying that most of the available projects only target SharePoint 2010.
It may be bloated, it may be over-complex in places, but it is hard not to be impressed by Microsoft's tool suite. This is an upgrade that Microsoft-platform developers will enjoy. ®