.NET Framework 3.0 = .NET Framework 2.0 + WCF + WPF + WF + WCS

Kirk Allen Evans has the best explanation so far of what comprises the .NET Framework 3.0. It can be summarized as:

.NET Framework 3.0 = .NET Framework 2.0 + WCF + WPF + WF + WCS

He also has a diagram showing the different parts.

Brad Abrams also tries to clear up the confusion by giving some more information .NET 3.0 and the "Orcas" release, which will be the vNextNext of the .NET Framework. The "Orcas" release will include the LINQ related technologies, like the new C# 3.0 and VB 9.0 compilers. Brad anticipates that the "Orcas" release will be called the .NET Framework 3.5. If you look at the comments to his blog entry you can see that a lot of confusion about the details still remains.

Most people are happy to see the WinFX components being put under the .NET Framework umbrella. Nevertheless a lot of people (including me) aren't happy with the version number 3.0. It suggests too much. You would think the step from 2.0 to 3.0 would mean an updated version of the CLR, the compilers and framework classes like those in ASP.NET and ADO.NET.

Yes, the WinFX components are a major addition to the .NET Framework. But I think the major version number of the .NET Framework is the wrong place to put the marketing spin about this. I even have doubts about changing the minor version number of the .NET Framework. I think it should just remain:

.NET Framework 2.0 + WinFX = .NET Framework 2.0 + WCF + WPF + WF + WCS

No matter how big in functionality, WinFX is still only an addition to .NET 2.0. As such it should not change the version number. I think Microsoft should use the "Orcas" release, which does change .NET 2.0 by updating the compilers and framework classes, to fully embrace WinFX and change the version number of the .NET Framework.

One thought on “.NET Framework 3.0 = .NET Framework 2.0 + WCF + WPF + WF + WCS

  1. I guess the key here is "...I consider it to be..."

    In any case, discussing that point would mean missing the main point which IMO is, that our understanding of how things are versioned/partitioned is changing.

    No longer should we expect 'file versions' or 'assembly versions' or 'folder names that include version numbers' to match 'product versions'. I agree that the world may get a bit more confusing in the beggining as a result, but I am sure you agree this is a good think since decoupling will allow more timely releases of the various bits (rather than delays in favor of the whole).

    Just my *personal* opinion 🙂


Leave a Reply

Your email address will not be published. Required fields are marked *