.NET Framework版本解析

大可山發表於2009-01-06

.Net 新技術不斷翻新,.net框架的版本已經從1.0開始,經過1.1, 2.0, 3.0, 現在已到了3.5。很多人驚呼:變化太快了,我們剛剛學會一個,下一個又來了,似乎永遠有學不完的東西!其實,當你愛上IT行業的那一刻起,就應該有“活到老,學到老”的思想準備。在IT業,也印證了“想說愛你不容易”這句時髦的流行語。

.net框架的版本不斷更新,是舊瓶裝新酒還是新瓶裝舊酒?答案似乎更趨後者。且看如下公式:

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

.NET Framework 3.5 版以 .NET Framework 2.0 版和 .NET Framework 3.0 版為基礎,包括 .NET Framework 2.0 和 3.0 版的 Service Pack。

.NET Framework 2.0 SP1: 它更新包含在 .NET Framework 2.0 中的程式集。
.NET Framework 3.0還包含 .NET Framework 3.0 中引入的技術所必需的程式集。例如,WPF等
.NET Framework 3.0 Service Pack 1,它更新在 .NET Framework 3.0 中引入的程式集(PresentationFramework.dll,PresentationCore.dll等)。

應用程式無論針對的是 .NET Framework 2.0、3.0 還是 3.5 版,都使用相同的程式集。
例如: 對於使用 WPF 並針對 .NET Framework 3.0 的應用程式,其所使用的 mscorlib 程式集例項與使用 Windows 窗體並針對 .NET Framework 2.0 的應用程式是相同的。如果 .NET Framework 2.0 SP1 已安裝在計算機上,則 mscorlib.dll 已更新,並且兩個應用程式將都使用 mscorlib.dll 的更新版本。

所以,有人又這麼總結:

.NET 3.0 = .NET 2.0 SP 1 with WCF, WPF, WF and WCS
.NET 3.5 = .NET 2.0 SP 2 with LINQ, C# 3.0, WCF 2.0, WPF 2.0, WF 2.0 and ASP.NET Ajax

值得一提的是,.NET Framework 2.0、3.0 和 3.5 版之間的關係不同於 1.0、1.1 和 2.0 版之間的關係。.NET Framework 1.0、1.1 和 2.0 版是彼此完全獨立的,對於其中任何一個版本來說,無論計算機上是否存在其他版本,自己都可以存在於該計算機上。當 1.0、1.1 和 2.0 版位於同一臺計算機上時,每個版本都有自己的公共語言執行庫、類庫和編譯器,等等。也就是,應用程式可以選擇是針對 1.0、1.1 還是 2.0 版。

.Net版本比較表 .NET打包版本 1.0 1.1 2.0  3.0 3.5
CLR版本 1.0 1.1 2.0 2.0 2.0
C#編譯器版本 1.0 1.1 2.0 2.0 3.0
VB編譯器版本 7.0 7.1 8.0 8.0 9.0


版本相容性

關於版本的相容性,以下是MSDN的解釋:
       .NET Framework 對向後和向前相容性的支援與版本相關。.NET Framework 只對使用 1.1 版建立的應用程式支援向後和向前相容性。在使用 2.0 版建立的應用程式中,.NET Framework 不支援向前相容性。在 .NET Framework 的上下文中,向後相容性意味著使用 .NET Framework 的較早版本建立的應用程式可以在更高的版本上執行。相反,向前相容性意味著使用 .NET Framework 的更高版本建立的應用程式可以在較早的版本上執行。

       .NET Framework 提供高度的向後相容性支援。例如,大多數使用 1.0 版建立的應用程式將在 1.1 版上執行,使用 1.1 版建立的應用程式將在 2.0 版上執行。只有對於 1.1 版,.NET Framework 還支援向前相容性。但是,對於向前相容性,可能需要修改應用程式以使應用程式按預期的方式執行。使用 2.0 版建立的應用程式將不在 .NET Framework 的早期版本上執行。對於向後和向前相容性,對 .NET Framework 所做的可以提高安全性、正確性和功能性的更改也可能會引發相容性問題。


 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14601556/viewspace-528471/,如需轉載,請註明出處,否則將追究法律責任。

相關文章