Microsoft is releasing a technology preview of an extension to Visual Studio that’s supposed to simplify a key aspect of web development: figuring out which pieces should run on the client, versus that which should execute back on the server. The new tool, code-named Volta, was developed to simplify web programming with a declarative interface, and it provides Microsoft’s response to the Google Web Toolkit that was released last summer.
Microsoft’s answer, not surprisingly, revolves around performing similar feats with the .NET framework. Specifically, it works with any .NET-compliant language, and does its tricks, filling in al the necessary plumbing, at the Intermediate Language (IL) level that is where compilation to machine language actually occurs. And it invokes a code profiler that is already available inside the Windows Trace Viewer (which is part of the basic Windows SDK) to show where the hot spots are, so you can then accordingly refactor code using tooling that is already built into the .NET framework.
With the new tool, you can develop the application on the client, and once you’ve completed the code profiling, you use the Visual Studio refactoring tool by right clicking on the specific class. Previously, you would have had to enter all the necessary plumbing, such as serialize the arguments and send it on the wire, and then de-serialize it back on the server. With the new tool, the .NET framework’s IL automatically takes care of that for you.
As a tool initial preview, there are still a number of kinks to be worked out. The obvious place to start is integrating the code profiler into Visual Studio so you don’t have to exit to the Windows SDK to perform that step of the process. Another is extending support from the Windows Presentation rich client of Vista to its browser-agnostic Silverlight, which is likely to be next on Microsoft’s to do list.