On Wednesday, Microsoft took the cover off a preview version of a new programming toolset designed to ease the pain of developing Web and rich Internet applications.
Dubbed Volta, the toolkit for creating multitier Web applications relies on C# and Visual Basic. It is closely tied to .NET, and applications written with Volta can be debugged from within Visual Studio.
With Volta, developers can delay some key decisions until later in the development process, which Microsoft says makes it faster and less expensive to adjust architectures to accommodate evolving requirements.
Volta's Secret Sauce
Volta relies on a technique called declarative tier-splitting. The programmer inserts declarations into the source code to indicate the tiers on which certain classes and methods should run. Volta automatically inserts low-level communication and serialization code and moves the code to the appropriate tiers.
"By releasing Volta as an experimental toolset, we hope to validate the overall goal and approach, as well as collect feedback that will be helpful in driving further development," Eric Meijer, principal architect at Microsoft and for Volta, said in a statement.
Microsoft is convinced that Volta is unique among its peers. Meijer explained that Volta starts with a client-side perspective. Once developers are satisfied with an application's functionality and fully understand the internal object interactions, they "decorate" the code with declarative attributes to indicate the parts of the application that should run on other tiers.
What's more, Volta is deeply integrated with Visual Studio 2008. Developers can step from one tier to another through code, set breakpoints on any tier, and trace flows of control across distributed systems. "Volta enables new end-to-end profiling and testing for higher levels of application performance, robustness, and reliability by maintaining a single programming model across multiple tiers," Meijer said.
.NET Versus Sun
Volta's entrance on the scene could set up a face-off with Sun's Java on a new level. While .NET does not currently compete with Java in the developer world, many developers have adopted .NET because it builds on what Microsoft does best, leveraging its operating system.
"Microsoft .NET has been popular with Microsoft customers because it's there. When you install Microsoft Windows you have built-in messaging and supportive technologies that let you quickly set up," said Brad Shimmin, an analyst at Current Analysis.
Microsoft might have felt pressure from the Java camp to make .NET's development lifecycle faster and more efficient within organizations, Shimmin said. With Eclipse and its cornucopia of tools that make Java development so easy and cost-effective, he added, Microsoft seems compelled to make its comprehensive framework more suitable to larger organizations.