.NET Framework 概述

.NET Framework 是支援生成和運行下一代應用程式和 XML Web Services 的內部

Windows 元件。.NET Framework 旨在實現下列目標:

*提供一致的物件導向的程式設計環境,而無論物件代碼是在本機存放區和執行,還是在本地執行但在 Internet上分佈或者是在遠端執行的。

* 提供一個將軟體部署和版本控制衝突最小化的代碼執行環境。

* 提供一個可提高代碼(包括由未知的或不完全受信任的協力廠商創建的代碼)執行安全性的代碼執行環境。

*提供一個可消除腳本環境或解釋環境的性能問題的代碼執行環境。

*使開發人員的經驗在面對類型大不相同的應用程式(如基於 Windows 的應用程式和基於 Web 的應用程式)時保持一致。

*按照工業標準生成所有通信,以確保基於 .NET Framework 的代碼可與任何其他代碼集成。.NET Framework 具有兩個主要元件:公共語言運行庫和 .NET Framework 類庫。公共語言運行庫是 .NET Framework 的基礎。您可以將運行庫看作一個在執行時管理代碼的代理,它提供記憶體管理、執行緒管理和遠端處理等核心服務,並且還強制實施嚴格的類型安全以及可提高安全性和可靠性的其他形式的代碼準確性。事實上,代碼管理的概念是運行庫的基本原則。以運行庫為目標的代碼稱為託管代碼,而不以運行庫為目標的代碼稱為非託管代碼。.NET Framework 的另一個主要元件是類庫,它是一個綜合性的物件導向的可重用類型集合,您可以使用它開發多種應用程式,這些應用程式包括傳統的命令列或圖形化使用者介面 (GUI) 應用程式,也包括基於 ASP.NET 所提供的最新創新的應用程式(如 Web 表單和 XML Web Services)。.NET Framework 可由非託管元件承載,這些元件將公共語言運行庫載入到它們的進程中並啟動託管代碼的執行,從而創建一個可以同時利用託管和非託管功能的軟體環境。.NET Framework 不但提供若干個運行庫宿主,而且還支援協力廠商運行庫宿主的開發。例如,ASP.NET 承載運行庫以為託管代碼提供可伸縮的伺服器端環境。ASP.NET 直接使用運行庫以啟用 ASP.NET 應用程式和 XML Web Services Internet Explorer 是承載運行庫(以 MIME 類型擴展的形式)的非託管應用程式的一個示例。使用 Internet Explorer 承載運行庫使您能夠在 HTML 文檔中嵌入託管元件或 Windows 表單控制項。以這種方式承載運行庫使得託管移動代碼(類似於 MicrosoftR ActiveXR 控制項)成為可能,不過它需要進行重大改進(如不完全受信任的執行和獨立的檔存儲),而這種改進只有託管代碼才能提供。下圖顯示公共語言運行庫和類庫與應用程式之間以及與整個系統之間的關係。

.NET Framework 類庫

.NET Framework 類庫是一個與公共語言運行庫緊密集成的可重用的類型集合。該類庫是物件導向的,並提供您自己的託管代碼可從中匯出功能的類型。這不但使 .NET Framework 類型易於使用,而且還減少了學習 .NET Framework 的新功能所需要的時間。此外,協力廠商組件可與 .NET Framework 中的類無縫集成。正如您對物件導向的類庫所希望的那樣,.NET Framework 類型使您能夠完成一系列常見程式設計任務(包括諸如字串管理、資料收集、資料庫連接以及檔訪問等任務)。除這些常見任務之外,類庫還包括支持多種專用開發方案的類型。例如,可使用 .NET Framework 開發下列類型的應用程式和服務:

* 控制台應用程式。

* Windows GUI 應用程式(Windows 表單)。

* ASP.NET 應用程式。

* XML Web Services。

* Windows 服務。

在應用程式邏輯通過託管代碼執行時,伺服器(如 IIS 和 SQL Server)可執行標準操作。

ASP.NET 是使開發人員能夠使用 .NET Framework 開發基於 Web 的應用程式的宿主環境。但是,ASP.NET 不止是一個運行庫宿主;它是使用託管代碼開發網站和通過 Internet 分佈的物件的完整結構。Web 表單和 XML Web Services 都將 IIS 和 ASP.NET 用作應用程式的發佈機制,並且兩者在 .NET Framework 中都具有支援類集合。XML Web Services 作為基於 Web 的技術的重要發展,是類似於常見網站的分散式伺服器端應用程式元件。但是,與基於 Web 的應用程式不同,XML Web Services 元件不具有 UI 並且不以流覽器(如 Internet Explorer 和 Netscape Navigator)為目標。XML Web Services 由旨在供其他應用程式使用的可重用的軟體元件組成,所謂的其他應用程式包括:傳統的用戶端應用程式,基於 Web 的應用程式,甚至是其他 XML Web Services。因此,XML Web Services 技術正迅速地將應用程式開發和部署推向高度分散式 Internet 環境。.NET Framework 還提供類和工具的集合來?明開發和使用 XML Web Services 應用程式。XML Web Services 是基於 SOAP(一種遠端程序呼叫協議)、XML(一種可擴展的資料格式)和 WSDL(Web 服務描述語言)這些標準生成的。基於這些標準生成 .NET Framework 的目的是為了提高與非 Microsoft 解決方案的互通性。如果您開發和發佈自己的 XML Web Services,.NET Framework 為您提供了一組符合所有基礎通信標準(如 SOAP、WSDL 和 XML)的類。使用這些類使您能夠將注意力集中在服務的邏輯上,而無需關注分散式軟體發展所需要的通信基礎結構。

Framework 2.0新增功能

在 Microsoft .NET Framework 1.1 版的基礎上,.NET Framework 2.0 版進行了擴展,不僅對現有的功能做了改進,還新增了一些功能,並對文檔進行了增強。

*Ping

*FTP 支持

*分散式運算

*I/O 增強功能

*安全性異常

*SMTP 支持

*資料保護 API

*已驗證身份的流

*泛型和泛型集合

*Console 類增補

* 64 位平臺支援

*存取控制清單支持

*串列 I/O 設備支援

*.NET Framework 遠端處理

*COM Interop 服務增強功能

*ASP.NET 各個方面的重要增強

*ADO.NET大數值型別和快照隔離的支持

*全球化對於開發用於不同語言和區域性的支援。

NET Framework 版本相容性

.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 所做的可以提高安全性、正確性和功能性的更改也可能會引發相容性問題。

轉載自www.microsoft.com