Microsoft has fixed a number of long-standing issues in Visual Studio 2010 and has brought about an evolutionary – not revolutionary – update in .NET 4, said Alex Mackey, author of Introducing .NET With Visual Studio 2010.
Mackey is an ASP.NET/SQL Server consultant who has been working with .NET since version 1.0. Recently Alex has led development on a number of complex health care applications and has worked around the world in the Middle East, America and Ireland. Alex is active in the development community and runs the .NET user group DevEvening.co.uk. He is a Microsoft C# MVP.
As you were working on the book, did you find anything particularly surprising in the updates Microsoft made to Visual Studio or .NET?
I guess some of the dynamic changes were a bit surprising to me at first. However, they make a lot of sense when you consider that developers need an easier way to work with technologies such as COM.
Interoperability with other languages such as IronPython and IronRuby is also pretty cool and opens some interesting possibilities.
Visual Studio 2010 and .NET 4 are very much about evolution rather than revolution, so the changes in this release were not as radical and surprising as say .NET 3. This release contains many fixes to some old issues and refinement of existing API's.
One nice surprise was the pricing and ease of setup of Team Foundation Studio Basic. Do .NET 4.0 and VS2010 make parallelization and threading easier for developers in a significant way?
Absolutely. However, don't think that these are going to take away the complexities of threading and parallelization - these are inherently tricky concepts and guaranteed to increase the complexity of applications and give even the smartest developer a headache.
The good news is that the new Task APIs are much more intuitive to use and give you fine grained control over the scheduling and synchronization of tasks.
Visual Studio 2010 IDE also contains improved support for debugging parallel and multithreaded applications with some nice new visualization windows and tools. Take a look at Daniel Moth's website for a walk through of some of these.
It is worth noting that some applications upgraded to .NET 4 will run quicker with no work from the developer due to enhancements to the thread pool and garbage collection. Do you think Microsoft has given developers enough reasons to start adopting Windows Workflow Foundation in VS2010?
Windows Workflow has undergone a radical re-development in this release. It's quicker, has a better designer, is easier to customize and contains a new type of workflow, the flowchart. It is also more tightly integrated with WCF in terms of activities. I also liked the introduction of variables and arguments that make it much easier to pass data between activities.
Windows Workflow wasn't something that interested me previously, but the new enhancements make this a technology framework that all developers should be aware of. What were the most significant updates to ASP .NET?
Arguably the most significant update is the ability to control the ClientID that is generated for ASP .NET controls. This has only taken 8 or 9 years! You can now even specify the format the id is generated for repeating controls like the grid view. Another important change is the ability to specify how ViewState is inherited by controls.
ASP .NET contains a huge number of tweaks and improvements. I really like the much reduced Web.config file and some of the more subtle changes, such as improved html rendering, new HTML encoding syntax and fixes to paging.
ASP .NET deployment is also much improved with enhancements to the deployment process that make it easy to perform some quite complex deployments and changes.
Will Silverlight developers get everything they need for building applications in VS2010?
I must admit I am not up to date with Silverlight support in the final release. At the time I was researching and writing my book Silverlight and WPF support was much improved; Silverlight design surface being read-only in 2008. However, there were still suffered stability issues in the RC. I suspect Silverlight developers will still be using Blend for some time yet. Finally, is there anything in Visual Studio that you think Microsoft still needs to improve on?
The biggest disappoint for me was that Microsoft moved the ability to analyze code contracts at compile time to the more expensive Premium and Ultimate editions of Visual Studio. This is fantastic technology that could really improve the quality and stability of our applications. Visual Studio 2010 Ultimate Edition has a recommended retail price of over $10,000 that will put this feature out of reach for many developers.
From what I have seen, Silverlight and WPF support still has some way to go, although I accept Visual Studio is never going to offer the same functionality as Blend.
Finally, one thing that can be frustrating is that Microsoft is increasingly releasing updates out of the main cycle. This can be great in that you get product improvements quicker, but it can result in some annoying dependency problems when using new technologies such as Azure and RIA services. I am sure this kind of thing will get sorted out in time through.
However, these are minor criticisms. Visual Studio 2010 and .NET 4 are great releases and I can't wait to see what the teams come up with next.