views:

4387

answers:

5

Will Visual Studio 2008 be supported by new .NET 4 from the get go?

I'm particularly interested in the System.Collections.Concurrent namespace and the parallel task library, which I would use immediately.

Is it worth upgrading to Visual Studio 2010 when it comes out?

+2  A: 

My 2 cents - that would be against their business model. MSFT wants you to keep on buying new IDE every 2-3 years and they are pretty good at making sure that you cannot do some things without paying them first.

In sum: get VS 2010. It will be awesome after 3 months or so ...

Hamish Grubijan
this is a comment, not an answer. your opinion on Microsoft's revenue model isn't relevant to the question.
dnord
+18  A: 

No. VS2008 will not be able to target .NET 4.0:

Visual Studio 2010 supports .NET 4 and earlier projects. Visual Studio 2008 supports .NET 3.5SP1 projects.

Hope this helps,
Polita Paulus
Developer Division
Microsoft

Reference

Michael Petrotta
Thanks Michael.I knew in my bones that an upgrade was needed, but wanted to confirm it.
scope_creep
+1  A: 

Historically - No.

Starting with 2008 the IDE has been able to target lower version frameworks, but I doubt they will ever target a newer version framework.

Brian Schmitt
+2  A: 

If you want to know whether upgrading to VS 2010 will be worth it, then download beta 2 now, and try it out. Run it in a virtual machine if you don't trust it on a normal development machine. Run through some of the PDC videos showing the new features. Go through the Training Courses.

And above all, tell Microsoft what you think.

John Saunders
Hi John, I was wanting confirm it.
scope_creep
+8  A: 

While you can't use .NET 4.0 itself from VS2008, if you're interested in the Parallel Extensions stuff, you could download the Reactive Framework (formerly LINQ to Rx) which I believe contains at least a lot of Parallel Extensions backported to .NET 3.5 SP1.

From the Release Notes, it includes:

System.Threading, backport of Parallel Extensions for .NET 4 to .NET 3.5 SP1

  • Task for executing asynchronous operations.
  • Concurrent Collections such as ConcurrentStack, ConcurentQueue ad ConcurrentDictionary.
  • PLINQ for writing parallel queries.
  • addition Threading operations such as Barrier,SpinLock and SpinWait.
Jon Skeet