Thursday, December 24, 2009

New Features in .NET Framework 2.0

.NET Framework 4.0 will be out soon, it's in Beta 2 right now.

I've been focusing on new C# features and was quite surprised after reading this blog entry. There will be a whole lot of goodies bagged in this future release!

I would say this release will still follow the spirit brought by .NET 3.5, a lot of features added are influenced of the gaining popularity of dynamic languages, functional and concurrent programming.

Among things that caught my eye:
  1. Parallel and multicore enhancements, like in PLINQ (Parallel LINQ).

  2. Multi threading, better infrastructure to manage forks and synchronizations, hopefully no more WaitHandles.

  3. New data type such as BigInteger and Tuple. Been waiting for this for a long time!

  4. Lazy Initialization using Lazy<T> to complement the parallel features. This will tremendously improve performance when working with large sets of data.

  5. The DLR - Dynamic Language Runtime. "dynamic" keyword in C#!

  6. Code Contracts. No more external libraries to do "design by contract".

  7. There's some new features in ASP.NET like for better flexibility on working with view state and generated ID, but I didn't much thought about these. I'm working a lot in ASP.NET MVC nowdays (so long ViewState!)
Although these features are accessible from any .NET languages such as C# and VB.NET, a lot of them are to support the release of F#, which I think should be the "star" language for this version.

F# which is awesome as I see it, sadly has very little user base. Microsoft need to do more to promote this language.

p.s: Yes, this blog has been left collecting dust for a long time! And I am definitely losing my writing skills :P

0 comments: