Microsoft announced the next version of its developer platform, which will be named Visual Studio 2010 and .NET Framework 4.0. Microsoft said VS10 will focus on five key areas (in marketing-speak): riding the next-generation platform wave, inspiring developer delight, powering breakthrough departmental applications, enabling emerging trends such as cloud computing, and democratizing application life-cycle management (ALM).
“With Visual Studio 2010 and the .NET Framework 4.0, we are focused on the core pillars of developer experience, support for the latest platforms spanning client, server, services and devices, targeted experiences for specific application types, and core architecture improvements,” said S. Somasegar, senior vice president of the Developer Division at Microsoft. “These pillars are designed specifically to meet the needs of developers, the teams that drive the application life cycle from idea to delivery, and the customers that demand the highest quality applications across multiple platforms.”
Key features include:
Modeling tools. VS10 will enable both technical and non-technical users to create and use models to collaborate and to define business and system functionality graphically. VS10 will support both UML and Domain Specific Language support.
Improved efficiency throughout the test cycle. New features include the ability to eliminate non-reproducible bugs, fast setup and deployment of tests to ensure the highest degree of completeness of test, focused test planning and progress tracking, and ensuring that all code changes are properly tested.
Substantial improvements in collaboration capabilities. The capabilities and scalability of Team Foundation Server (TFS) will be improved. Teams can track work more easily by linking work items with code and models. Visual Studio Team System also introduces workflow-based builds to catch errors before they have a chance to affect the rest of the team or, worse, enter production.
The Most Important Feature of .NET 4.0
First, let’s look at the big picture. .NET 4.0 is not going to have any blockbuster changes at its core like the anonymous method support and generics of .NET 2.0. Nor is it going to be the odd bolt on of half finished products that was .NET 3.0. Nor will it be the language frenzy of .NET 3.5.
.NET 4.0 is going to include some core changes, particularly in the area of parallel processing that is going to be very important to some people, and will eventually make it into all of our consciousness.
.NET 4.0 will also include another chance for Entity Framework, and I hope they can finish what they’ve set out to do there. I think there’s a measurable change they’ll create something with broader reach than EF 1.0, but I think it will remain needlessly complex for most projects, and Microsoft has further proven that the data arena is not a place they can be trusted when they announced limited evolution of LINQ to SQL. I hope one day I will say I was needlessly cynical about Microsoft’s data strategy, and I hope that day comes soon. I remain cynical.
.NET 4.0 will bring Azure and cloud computing to the forefront. That’s cool. For niche applications it’s very powerful stuff. People I respect like David Chappell think this is going to be the main development approach of the future. Maybe. But not right now beyond short term scale out requirements and applications looking for a new delivery mechanism.
All three of these areas are reasons that I’ll be on my toes as .NET 4.0 unveils itself because it will probably have the largest impact on how I design and code since LINQ. I anticipate that patterns will arise that are important in building applications that will evolve to take advantage of these major Microsoft initiatives (and others).
Before I go on, I don’t want you to overlook what I just said… I’ve got gray hair and I’ve been in the business a long time…
.NET 4.0 is likely to offer patterns that will be the most important change in my coding since the huge changes brought on by LINQ (and supporting techniques like extensions and lambdas) of .NET 3.5. That was the most important change to my coding since generics in .NET 2.0. That was the most important change to my coding style since strongly typed full OO programming came on in .NET 1.0. That was the most important change to my coding style since the visual coding style of Visual Basic (pre .NET). That was the most important change to my coding style since Clipper and FoxPro. Get the trend? Eight years, eight years, three years, two years, 18 months… I do a talk for INETA called “Rethinking Object Orientation” that tries to get a grip on these changes… .NET 4.0 is going to bring a lot and inspire a lot of rethinking.
And so, to stick my neck out and say “this is the most important feature” requires clarification. If we look beyond the long term implications of .NET 4.0 and ask about what it changes in your world the day it ships, beyond incremental improvements, I think there’s only one answer.
The most important feature of .NET 4.0 is Windows Workflow 4.0.
Windows Workflow 3.5 gave you a tool for free that previously cost tens of thousands of dollars to get your foot in the door. It was a great opportunity. And there was almost no uptake. I think there were a few reasons – it was too darn hard to use and Microsoft didn’t push it very hard. They probably didn’t push it because it became evident that they screwed it up and it was way too hard to use.
Windows Workflow 4.0 is a complete rewrite of workflow. It’s a brand new product. More than just rewriting, it represents a rethinking of the problem. It’s not the old giant workflow behemoths pared down to fit into Visual Studio. It give normal developers what they need to incorporate workflow into their applications. If we look beyond forms over data and extend the reach of our applications into helping the organization accomplish its goals, we find workflow. Workflows are a fundamentally better way to think about business problems – and it can often be interleaved with existing applications. Assuming the release is stable as a 1.0 product, and I’m optimistic on that, it’s going to be the thing in .NET 4.0 that lets you add real business value to your applications.
And real business value is what its all about.
Important Links :
Microsoft Visual Studio 2010 Press Release
CNET: Visual Studio 2010 to come with “black box”