.net Framework各个版本之间的发展
上個星期看到了.NET 4.0框架退休日期逐漸臨近文章,發現自己一直在使用NET ?FrameWork,身為一個NET程序員,里面大概的區別自己還是知道的,但是自己要說出個所以然來了,發現還是有點力不從心,當時關于這幾個版本之間的有很多,目前很多地方都只是寫到了4.5,關于4.5.1,4.5.2這兩個版本提及的還是非常少的,相對來說,自己寫這篇文章也就沒有回鍋肉的嫌疑,正文開始吧:
DotNet ?Framework
.NET Framework由微軟開發的一個致力于敏捷軟件開發(Agile software development)、快速應用開發(Rapid application development)、平臺無關性和網絡透明化的軟件開發平臺。.NET是微軟為下一個十年對服務器和桌面型軟件工程邁出的第一步。.NET包含許多有助于互聯網和內部網應用迅捷開發的技術。
.NET框架是微軟公司繼Windows DNA之后的新開發平臺。.NET框架是以一種采用系統虛擬機運行的編程平臺,以通用語言運行庫(Common Language Runtime)為基礎,支持多種語言(C#、VB、C++、Python等)的開發。
.NET也為應用程序接口(API)提供了新功能和開發工具。這些革新使得程序設計員可以同時進行Windows應用軟件和網絡應用軟件以及組件和服務(web服務)的開發。.NET提供了一個新的反射性的且面向對象程序設計編程接口。.NET設計得足夠通用化從而使許多不同高級語言都得以被匯集。
DotNet ?Framework版本的進化史(CLR 1)
??? ?1.0 ? ???
1.0發布于2002年是NET最早的一個版本,是第一個微軟Visual Studio .NET的發行版的一部分(Visual Studio .NET 2002)??梢砸砸粋€獨立且可重新分發的包的形式或在一個軟件發展工具包集中被獲得,不能安裝在用戶操作系統和服務器操作系統上。
CLR:1.0
操作系統(安裝):無
服務器操作系統(安裝):無
? ? ?1.1 ? ? ??
1.1是對1.0框架的升級版本,發行于2003年,比1.0晚了一年,包含在Visual Studio 2003中。 相對于1.0版本的改進: 自帶了對mobile asp .net控件的支持,安全方面使Windows窗體代碼以可靠的行為運行,從而可以在Internet環境內安全運行,并且加入了ASP .NET應用程序的代碼安全訪問功能。自帶了對ODBC和Oracle數據庫的支持。同時新增了.NET Compact Framework技術,用于智能設備(例如Pocket PC或者SmartPhone)。增加了對IPv6的支持,變更了大量的API。
CLR:1.1
操作系統(安裝):無
服務器操作系統(安裝):Window ?Server ?2003
DotNet ?Framework版本的進化史(CLR 2)
? ?2.0 ? ?
很多人都懷念的一個框架,.NET框架 2.0的組件都包含在 Visual Studio 2005和SQL Server 2005里面。首次實現了對64位平臺的支持,在的很多程序所用到的功能基本上2.0都提供了技術支持,這個框架被眾多的懷念也不是沒有道理的.
WinForm
做過WinForm開發的應該對這個DataGridView?控件不會陌生,它是2.0為Winform提供的一個表格控件,為了更好的操作數據。窗體中加載網頁提供的WebBrowser控件, 分割窗體提供的SplitContainer 控件,為解決后臺費很長時間的(圖像下載或者數據庫事務?)提供的BackgroundWorker 組件.
ASP.NET
2.0 版本的ASP.NET 已經得到很大的改進,大多數常見 Web 應用程序開箱都可以找到。建立網站和網頁并維持其運行比以前變得更加簡單,而且使用的代碼比以前更少。這樣提高了程序員的開發效率,同時也降低了做Donet的程序員基礎知識相對薄弱一點。母版頁,ViewState,緩存(Cache)新功能加入了ASP.NET體系,控件方面也加入用于顯示和編輯數據的?GridView((GridView 控件取代了以前版本的 ASP.NET 中的 DataGrid 控件))、DetailsView、FormView 控件。
ADO.NET
ADO.NET 中的新功能包括對用戶定義類型 (UDT)、異步數據庫操作、XML 數據類型、大值類型和快照隔離的支持,以及對允許應用程序通過 SQL Server 2005 支持多活動結果集 (MARS) 的新屬性的支持.
2.0支持FTP,增強了I/O讀寫,SMTP支持,提供了新的?XSL 轉換 (XSLT) 處理器,Web服務等功能,有幾個功能需要稍微提一下:
COM Interop 服務增強功能
- 操作系統維護有限數量的句柄,這些句柄用來引用關鍵操作系統資源。新的 SafeHandle 和 CriticalHandle 類及其專用派生類提供了對操作系統句柄進行操作的安全可靠的方式。
- 對封送處理的改進使得與本機代碼交互操作更加容易。對互操作封送拆收器的兩種增強功能滿足了最常見的兩種用戶要求:將本機函數指針包裝到委托中的能力以及在結構內部封送固定大小的結構數組的能力。
- 對于常見調用類型,不同應用程序域中的應用程序之間的調用性能速度更快。
- 類型庫導入程序 (Tlbimp.exe) 和類型庫導出程序 (Tlbexp.exe) 的新開關消除了對注冊表解析類型庫引用的依賴性。此增強對于創建可靠的生成環境非常重要。
?調試器顯示屬性
可以控制當調試應用程序時 Visual Studio 顯示類或成員的方式,調試器的顯示屬性功能使您能夠標識要在調試器中顯示的最有用的信息(對于現在來說是很正常不過的一個事情)
調試器編輯并繼續支持
編輯并繼續
NET Framework 2.0 重新引入了“編輯并繼續”功能,該功能使在 Visual Studio 中調試應用程序的用戶能夠在以中斷模式執行的同時更改源代碼。在應用對源代碼所做的編輯之后,用戶可以繼續執行代碼并觀察效果。而且,“編輯并繼續”功能在 Visual Studio 所支持的任何編程語言中都可用。
CLR:2.0
操作系統(安裝):無
服務器操作系統(安裝):Window ?Server ?2003,Window Server 2008 SP2,Window Server 2008 R2 ?SP1
? ? 3.0 ? ??
.NET框架 3.0 發布日期2006/11/21,曾用名“WinFX”。加入了適應未來軟件發展方向的4個框架:
Windows Presentation Foundation(WPF):提供更佳的用戶體驗,用來開發Windows Forms程序以及流覽器應用程序,主要是用于表現層UI.(跟Winform有點類似,但不一樣)
Windows Communication Foundation(WCF):提供SOA(面向服務的軟件構架)支持的安全的網絡服務(Web Service)框架,主要解決 程序之間的通信問題.
Windows Workflow Foundation(WF):提供一個設計與發展工作流程導向(Workflow-oriented)應用程序基礎支持的應用程序接口,主要是控制程序之間的邏輯轉換。
Windows CardSpace:提供一個SSO的解決方案,每個用戶都有各自的CardSpace。(沒用過,不是很了解)
按照微軟的這個設計思路,WPF用于UI表現,WCF用于程序之間的通信,WF用于程序之間的邏輯控制,這樣程序員什么都不用愁了,事實是大家基本上最后悔用到其中的一兩個.
.NET框架 3.0 SP1隨.NET框架 3.5同時發行,.NET框架 3.0 SP2隨.NET框架 3.5 SP1同時發行。
CLR:2.0
操作系統(安裝):Vista(內置)
服務器操作系統(安裝):Window ?Server ?2003,Window Server 2008 SP2(內置),Window Server 2008 R2 ?SP1(內置)
? 3.5 ? ?
該版本隨Visual Studio 2008一起發布,現在還具有很強大的生命力,功能相對2.0增加了不少:
ASP.NET
新增了ListView 數據控件和LinqDataSource 控件,ListView 數據控件用于顯示數據,類似于 DataList 和 Repeater 控件。與這兩種控件不同的是,ListView 控件支持編輯、插入和刪除操作,還支持排序和分頁操作。分頁功能是由新的 DataPager 控件為 ListView 提供的。(初學的時候用過,已經很久沒用),LinqDataSource 控件通過 ASP.NET 數據源控件結構公開語言集成查詢 (LINQ).
支持基于服務器的 AJAX 開發的服務器控件。這些控件包括 ScriptManager、UpdatePanel、UpdateProgress 和 Timer 控件。通過這些控件,使用很少客戶端腳本,甚至不使用客戶端腳本,就可以創建豐富的客戶端行為(例如,部分頁呈現和在異步回發過程中顯示更新進度)。
LINQ
語言集成查詢 (LINQ) 是 Visual Studio 2008 和 .NET Framework 3.5 中的新功能。LINQ 將強大的查詢功能擴展到 C# 和 Visual Basic 的語言語法中,并采用標準的、易于學習的查詢模式??梢詫Υ思夹g進行擴展以支持幾乎任何類型的數據存儲。.NET Framework 3.5 包含 LINQ 提供程序程序集,這些程序集支持使用 LINQ 來查詢 .NET Framework 集合、SQL Server 數據庫、ADO.NET 數據集和 XML 文檔(LINQ to Object、LINQ to ADO .NET以及LINQ to XML表達式目錄樹Expression Tree)。
.NET Framework 3.5 統一了 Windows Workflow Foundation (WF) 和 Windows Communication Foundation (WCF) 框架,以便可以使用 WF 作為一種創作 WCF 服務的方式或將現有 WF 工作流作為服務公開。.NET Framework 3.5 還引入了對 WCF 服務的支持,這些服務使用 WF 持久模型來保存服務的狀態信息。這些持久性服務將其狀態信息保存在應用程序層上,以便在取消然后重新創建會話時,可以從持久存儲區中重新加載該服務的狀態信息??梢?/span>創建基于 ASP.NET (.asmx) 和 WCF 的 Web 服務,.NET Framework 3.5 版 還與 IIS 7.0 集成。
同時,.NET框架 3.5自動包含.NET框架 2.0 SP1以及.NET框架 3.0 SP1,用于為這兩個版本提供安全性修復,以及少量新增的類庫(如System.DateTimeOffest)。
CLR:2.0
操作系統(安裝):Vista,Window ?7(內置),Window 8(內置),Window ?8.1(內置)
服務器操作系統(安裝):Window ?Server ?2003,Window Server 2008 SP2,Window Server 2008 R2 ?SP1(內置),Window Server 2012,Window Server 2012 R2?
DotNet ?Framework版本的進化史(CLR 4)
? ?4.0 ? ?
? ? ? ASP.NET?
? ? ? WPF
? ? ?WCF
? ? ?WCF REST?
? ? ? ?WF
? ? ?ADO.NET
? ? ?ADO.NET 提供了一些用于 Entity Framework 的新功能,其中包括持久性未知對象、LINQ 查詢中的函數以及自定義對象層代碼生成。?
? ? ?CLR:4
? ? ?操作系統(安裝):Vista,Window ?7
? ? ?服務器操作系統(安裝):Window ?Server ?2003,Window Server 2008 SP2,Window Server 2008 R2 ?SP1?
? ?4.5 ? ?
?框架每次升級的時候基本上就是為前面的設計的失誤或者根據開發人員實際開發中常用的東西封裝,不過4.5最大的亮點就是支持移動開發,開發Window ?Phone應用,為有的人帶來了機遇,更多的人則被掉里面去在慢慢的往外爬,其他功能也進行了變更,具體的新增功能可參考:http://msdn.microsoft.com/zh-cn/library/ms171868(v=vs.110).aspx
CLR:4
操作系統(安裝):Vista,Window ?7,Window ?8(內置)
服務器操作系統(安裝):Window Server 2008 SP2,Window Server 2008 R2 ?SP1,Window ?Server ?2012?
? ? ? 4.5.1 ? ? ? ? ??
EF 和 ADO.NET 現在對連接失敗的情況容錯性更好,比如以前連接服務器的時候,服務器突然掛了,直接拋異常,新框架中一旦網絡連接得以恢復,應用程序就會監測到它,并繼續之前的工作。
ASP.NET 應用現在可以自動掛起了。實際運行的 ASP.NET 工作進程(worker process)將被掛起為可隨時喚醒的狀態,這能夠節省 90% 的啟動時間。當應用程序處于空閑狀態一段時間后,它將會被分頁到磁盤,一旦某個請求到來或是完成,它將被喚醒??梢栽?IIS 配置中將 Time-out Action 這一項設置為“掛起”以實現這一功能。
CLR:4
操作系統(安裝):Vista,Window ?7,Window ?8,Window ?8.1(內置)
服務器操作系統(安裝):Window Server 2008 SP2,Window Server 2008 R2 ?SP1,Window ?Server ?2012 ,Window ?Server ?2012 ?R2(內置)
詳情可參考:http://blogs.msdn.com/b/dotnet/archive/2013/06/26/announcing-the-net-framework-4-5-1-preview.aspx
? ? ? ? 4.5.2 ? ? ? ? ? ?
ASP.NET 網絡應用提供了新的API。新HttpResponse,AddOnSendingHeaders和HttpResponseBase。AddOnSendingHeaders方法檢查和修改響應頭和狀態碼響應客戶端程序的清酒,用來代替方法PreSendRequestHeaders和PreSendRequestContent方法。
調整在Windows窗體控件??梢允褂孟到yDPI設置調整組件以下額外的控件(例如,在組合框的下拉箭頭):
可選特性,在配置文件中設置EnableWindowsFormsHighDpiAutoResizing:
CLR:4
操作系統(安裝):Vista,Window ?7,Window ?8,Window ?8.1
服務器操作系統(安裝):Window Server 2008 SP2,Window Server 2008 R2 ?SP1,Window ?Server ?2012 ,Window ?Server ?2012 ?R2
最后用一張圖來總結一下吧(網絡圖片):
基本上Dotnet ?FrameWork每個版本都可以寫成一大篇文章,本文難免有理解不到位,或者理解錯誤的地方,如果不當,請各位多多包涵,理性指出~
http://msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx
總結
以上是生活随笔為你收集整理的.net Framework各个版本之间的发展的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 银行如何拓展新客户 银行发展新用户的方法
- 下一篇: mkfs -t ext3 错误/dev/