Over the last many months I had blogged about a lot of new and interesting features that are in VS 2010 and .NET 4. You can see those features and many more in Beta 1. We have more work to do in terms of finishing up the feature work for some of the scenarios and getting to the right levels of quality and performance, but we have made enough progress that we wanted to start getting your feedback.
I’ve been reading through the wealth of documentation on MSDN (here), about the improvements to performance and look-and-feel of the IDE. The most interesting stuff I’ve read so far:
Parallelization: The new Parallel and Task classes, supporting types, along with PLINQ introduce a new programming model for efficient, scalable parallel code without having to deal directly with threads and the thread pool. More information: Parallel Programming in the .Net framework.
Code Contracts: The new System.Diagnostics.Contracts namespace provide language-neutral ways to express pre-conditions, post-conditions and object invariants, allowing for static bug finding without having to execute the code.
Microsoft ASP.NET MVC 1.0 has reached final release. The announcement was made by ScottGu at the MIX 09 conference.
ASP.NET MVC 1.0 provides a new Model-View-Controller (MVC) framework on top of the existing ASP.NET 3.5 runtime. This means that developers can take advantage of the MVC design patterns to create their Web Applications which includes the ability to achieve and maintain a clear separation of concerns (the UI or view from the business and application logic and backend data), as well as facilitate test driven development (TDD). The ASP.NET MVC framework defines a specific pattern to the Web Application folder structure and provides a controller base-class to handle and process requests for “actions”. Developers can take advantage of the specific Visual Studio 2008 MVC templates within this release to create their Web applications, which includes the ability to select a specific Unit Test structure to accompany their Web Application development.
The MVC framework is fully extensible at all points, allowing developers to create sophisticated structures that meet their needs, including for example Dependency Injection (DI) techniques, new view rendering engines or specialized controllers.
As the ASP.NET MVC framework is built on ASP.NET 3.5, developers can take advantage of many existing ASP.NET 3.5 features, such as localization, authorization, Profile etc.
That’s got to be one of the fastest project lifecycles I’ve seen come out of MS, from the initial CTP in December 2007, beta in October 2008 to stable release in March 2009. The MVC team have done a fantastic job of continually improving the framework and listening to community feedback. MVC is a joy to work with and makes an awesome change from ASP.NET WebForms.
It’ll be great to finally be able to persuade project managers, who tend to shy away from anything with a “Beta” or “RC” tag, to use MVC and vastly improve the architecture of web projects.
Here’s a video from Phil Haack talking about the new release: