大家好,小良來為大家解答以上問題。microsoftnetframework有什么用途很多人還不知道,現在讓我們一起來看看吧!
1、.NET Framework.NET Framework 概述請參見使用 .NET Framework 編程 | 快速入門 | 示例 | 教程.NET Framework 是一種新的計算平臺,它簡化了在高度分布式 Internet 環境中的應用程序開發。
2、.NET Framework 旨在實現下列目標:提供一個一致的面向對象的編程環境,而無論對象代碼是在本地存儲和執行,還是在本地執行但在 Internet 上分布,或者是在遠程執行的。
3、提供一個將軟件部署和版本控制沖突最小化的代碼執行環境。
4、提供一個保證代碼(包括由未知的或不完全受信任的第三方創建的代碼)安全執行的代碼執行環境。
5、提供一個可消除腳本環境或解釋環境的性能問題的代碼執行環境。
6、使開發人員的經驗在面對類型大不相同的應用程序(如基于 Windows 的應用程序和基于 Web 的應用程序)時保持一致。
7、按照工業標準生成所有通信,以確保基于 .NET Framework 的代碼可與任何其他代碼集成。
8、.NET Framework 具有兩個主要組件:公共語言運行庫和 .NET Framework 類庫。
9、公共語言運行庫是 .NET Framework 的基礎。
10、您可以將運行庫看作一個在執行時管理代碼的代理,它提供核心服務(如內存管理、線程管理和遠程處理),而且還強制實施嚴格的類型安全以及可確保安全性和可靠性的其他形式的代碼準確性。
11、事實上,代碼管理的概念是運行庫的基本原則。
12、以運行庫為目標的代碼稱為托管代碼,而不以運行庫為目標的代碼稱為非托管代碼。
13、.NET Framework 的另一個主要組件是類庫,它是一個綜合性的面向對象的可重用類型集合,您可以使用它開發多種應用程序,這些應用程序包括傳統的命令行或圖形用戶界面 (GUI) 應用程序,也包括基于 ASP.NET 所提供的最新創新的應用程序(如 Web 窗體和 XML Web services)。
14、.NET Framework 可由非托管組件承載,這些組件將公共語言運行庫加載到它們的進程中并啟動托管代碼的執行,從而創建一個可以同時利用托管和非托管功能的軟件環境。
15、.NET Framework 不但提供若干個運行庫宿主,而且還支持第三方運行庫宿主的開發。
16、例如,ASP.NET 承載運行庫以為托管代碼提供可伸縮的服務器端環境。
17、ASP.NET 直接使用運行庫以啟用 ASP.NET 應用程序和 XML Web services(本主題稍后將對這兩者進行討論)。
18、Internet Explorer 是承載運行庫(以 MIME 類型擴展的形式)的非托管應用程序的一個示例。
19、使用 Internet Explorer 承載運行庫使您能夠在 HTML 文檔中嵌入托管組件或 Windows 窗體控件。
20、以這種方式承載運行庫使得托管移動代碼(類似于 Microsoft? ActiveX? 控件)成為可能,但是它具有只有托管代碼才能提供的重大改進(如不完全受信任的執行和安全的獨立文件存儲)。
21、下面的插圖顯示公共語言運行庫和類庫與應用程序之間以及與整個系統之間的關系。
22、該插圖還顯示托管代碼如何在更大的結構內運行。
23、.NET Framework 環境下面的章節將更加詳細地描述 .NET Framework 的主要組件和功能。
24、公共語言運行庫的功能公共語言運行庫管理內存、線程執行、代碼執行、代碼安全驗證、編譯以及其他系統服務。
25、這些功能是在公共語言運行庫上運行的托管代碼所固有的。
26、至于安全性,取決于包括托管組件的來源(如 Internet、企業網絡或本地計算機)在內的一些因素,托管組件被賦予不同程度的信任。
27、這意味著即使用在同一活動應用程序中,托管組件既可能能夠執行文件訪問操作、注冊表訪問操作或其他須小心使用的功能,也可能不能夠執行這些功能。
28、運行庫強制實施代碼訪問安全。
29、例如,用戶可以相信嵌入在 Web 頁中的可執行文件能夠在屏幕上播放動畫或唱歌,但不能訪問他們的個人數據、文件系統或網絡。
30、這樣,運行庫的安全性功能就使通過 Internet 部署的合法軟件能夠具有特別豐富的功能。
31、運行庫還通過實現稱為通用類型系統 (CTS) 的嚴格類型驗證和代碼驗證基礎結構來加強代碼可靠性。
32、CTS 確保所有托管代碼都是可以自我描述的。
33、各種 Microsoft 和第三方語言編譯器生成符合 CTS 的托管代碼。
34、這意味著托管代碼可在嚴格實施類型保真和類型安全的同時使用其他托管類型和實例。
35、此外,運行庫的托管環境還消除了許多常見的軟件問題。
36、例如,運行庫自動處理對象布局并管理對對象的引用,在不再使用它們時將它們釋放。
37、這種自動內存管理解決了兩個最常見的應用程序錯誤:內存泄漏和無效內存引用。
38、運行庫還提高了開發人員的工作效率。
39、例如,程序員可以用他們選擇的開發語言編寫應用程序,卻仍能充分利用其他開發人員用其他語言編寫的運行庫、類庫和組件。
40、任何選擇以運行庫為目標的編譯器供應商都可以這樣做。
41、以 .NET Framework 為目標的語言編譯器使得用該語言編寫的現有代碼可以使用 .NET Framework 的功能,這大大減輕了現有應用程序的遷移過程的工作負擔。
42、盡管運行庫是為未來的軟件設計的,但是它也支持現在和以前的軟件。
43、托管和非托管代碼之間的互操作性使開發人員能夠繼續使用所需的 COM 組件和 DLL。
44、運行庫旨在增強性能。
45、盡管公共語言運行庫提供許多標準運行庫服務,但是它從不解釋托管代碼。
46、一種稱為實時 (JIT) 編譯的功能使所有托管代碼能夠以它在其上執行的系統的本機語言運行。
47、同時,內存管理器排除了出現零碎內存的可能性,并增大了內存引用區域以進一步提高性能。
48、最后,運行庫可由高性能的服務器端應用程序(如 Microsoft? SQL Server? 和 Internet 信息服務 (IIS))承載。
49、此基礎結構使您在享受支持運行庫宿主的行業最佳企業服務器的優越性能的同時,能夠使用托管代碼編寫業務邏輯。
50、.NET Framework 類庫.NET Framework 類庫是一個與公共語言運行庫緊密集成的可重用的類型集合。
51、該類庫是面向對象的,并提供您自己的托管代碼可從中導出功能的類型。
52、這不但使 .NET Framework 類型易于使用,而且還減少了學習 .NET Framework 的新功能所需要的時間。
53、此外,第三方組件可與 .NET Framework 中的類無縫集成。
54、例如,.NET Framework 集合類實現一組可用于開發您自己的集合類的接口。
55、您的集合類將與 .NET Framework 中的類無縫地混合。
56、正如您對面向對象的類庫所希望的那樣,.NET Framework 類型使您能夠完成一系列常見編程任務(包括諸如字符串管理、數據收集、數據庫連接以及文件訪問等任務)。
57、除這些常見任務之外,類庫還包括支持多種專用開發方案的類型。
58、例如,可使用 .NET Framework 開發下列類型的應用程序和服務:控制臺應用程序。
59、Windows GUI 應用程序(Windows 窗體)。
60、ASP.NET 應用程序。
61、XML Web services。
62、Windows 服務。
63、例如,Windows 窗體類是一組綜合性的可重用的類型,它們大大簡化了 Windows GUI 的開發。
64、如果要編寫 ASP.NET Web 窗體應用程序,可使用 Web 窗體類。
65、客戶端應用程序開發客戶端應用程序在基于 Windows 的編程中最接近于傳統風格的應用程序。
66、這些是在桌面上顯示窗口或窗體從而使用戶能夠執行任務的應用程序類型。
67、客戶端應用程序包括諸如字處理程序和電子表格等應用程序,還包括自定義的業務應用程序(如數據輸入工具、報告工具等等)。
68、客戶端應用程序通常使用窗口、菜單、按鈕和其他 GUI 元素,并且它們可能訪問本地資源(如文件系統)和外圍設備(如打印機)。
69、另一種客戶端應用程序是作為 Web 頁通過 Internet 部署的傳統 ActiveX 控件(現在被托管 Windows 窗體控件所替代)。
70、此應用程序非常類似于其他客戶端應用程序:它在本機執行,可以訪問本地資源,并包含圖形元素。
71、過去,開發人員將 C/C++ 與 Microsoft 基礎類 (MFC) 或應用程序快速開發 (RAD) 環境(如 Microsoft? Visual Basic?)一起使用來創建這樣的應用程序。
72、.NET Framework 將這些現有產品的特點合并到了單個且一致的開發環境中,該環境大大簡化了客戶端應用程序的開發。
73、包含在 .NET Framework 中的 Windows 窗體類旨在用于 GUI 開發。
74、您可以輕松創建具有適應多變的商業需求所需的靈活性的命令窗口、按鈕、菜單、工具欄和其他屏幕元素。
75、例如,.NET Framework 提供簡單的屬性以調整與窗體相關聯的可視屬性。
76、某些情況下,基礎操作系統不支持直接更改這些屬性,而在這些情況下,.NET Framework 將自動重新創建窗體。
77、這是 .NET Framework 集成開發人員接口從而使編碼更簡單更一致的許多方法之一。
78、和 ActiveX 控件不同,Windows 窗體控件具有對用戶計算機的不完全受信任的訪問權限。
79、這意味著二進制代碼或在本機執行的代碼可訪問用戶系統上的某些資源,例如 GUI 元素和訪問受限制的文件,但這些代碼不能訪問或危害其他資源。
80、由于具有代碼訪問安全性,許多曾經需要安裝在用戶系統上的應用程序現在可以通過 Web 安全地部署。
81、您的應用程序可以在像 Web 頁那樣部署時實現本地應用程序的功能。
82、服務器應用程序開發在托管領域中,服務器端應用程序是通過運行庫宿主實現的。
83、非托管應用程序承載公共語言運行庫,后者使您的自定義托管代碼可以控制服務器的行為。
84、此模型在獲得主服務器的性能和可伸縮性的同時提供給您公共語言運行庫和類庫的所有功能。
85、下面的插圖顯示在不同服務器環境中運行托管代碼的基本網絡架構。
86、在應用程序邏輯通過托管代碼執行時,服務器(如 IIS 和 SQL Server)可執行標準操作。
87、服務器端托管代碼ASP.NET 是使開發人員能夠使用 .NET Framework 開發基于 Web 的應用程序的宿主環境。
88、但是,ASP.NET 不止是一個運行庫宿主;它是使用托管代碼開發 Web 站點和通過 Internet 分布的對象的完整結構。
89、Web 窗體和 XML Web services 都將 IIS 和 ASP.NET 用作應用程序的發布機制,并且兩者在 .NET Framework 中都具有支持類集合。
90、XML Web services 作為基于 Web 的技術的重要發展,是類似于常見 Web 站點的分布式服務器端應用程序組件。
91、但是,與基于 Web 的應用程序不同,XML Web services 組件不具有 UI 并且不以瀏覽器(如 Internet Explorer 和 Netscape Navigator)為目標。
92、XML Web services 由旨在供其他應用程序使用的可重用的軟件組件組成,所謂的其他應用程序包括:傳統的客戶端應用程序,基于 Web 的應用程序,甚至是其他 XML Web services。
93、因此,XML Web services 技術正迅速地將應用程序開發和部署推向高度分布式 Internet 環境。
94、如果您使用過 ASP 技術的早期版本,很快就會注意到 ASP.NET 和 Web 窗體提供的改進。
95、例如,您可以用支持 .NET Framework 的任何語言開發 Web 窗體頁。
96、此外,您的代碼不再需要與 HTTP 文本共享同一個文件(盡管如果您愿意,代碼還可以繼續這樣做)。
97、Web 窗體頁用本機語言執行,這是因為與所有其他托管應用程序一樣,它們充分利用運行庫。
98、與此相對照,非托管 ASP 頁始終被寫成腳本并解釋。
99、ASP.NET 頁比非托管 ASP 頁更快、更實用并且更易于開發,這是因為它們像所有托管應用程序一樣與運行庫進行交互。
100、.NET Framework 還提供類和工具的集合來幫助開發和使用 XML Web services 應用程序。
101、XML Web services 是基于 SOAP(一種遠程過程調用協議)、XML(一種可擴展的數據格式)和 WSDL(Web 服務描述語言)這些標準生成的。
102、基于這些標準生成 .NET Framework 的目的是為了提高與非 Microsoft 解決方案的互操作性。
103、例如,.NET Framework SDK 所包含的 Web 服務描述語言工具可以查詢在 Web 上發布的 XML Web services,分析它的 WSDL 描述,并產生 C# 或 Visual Basic 源代碼,您的應用程序可以使用這些代碼而成為 XML Web services 的客戶端。
104、這些源代碼可以創建從類庫中的類派生的類,這些類使用 SOAP 和 XML 分析處理所有基礎通信。
105、雖然您可以使用類庫來直接使用 XML Web services,Web 服務描述語言工具和包含在 SDK 中的其他工具可以使您更加方便地用 .NET Framework 進行開發。
106、如果您開發和發布自己的 XML Web services,.NET Framework 為您提供了一組符合所有基礎通信標準(如 SOAP、WSDL 和 XML)的類。
107、使用這些類使您能夠將注意力集中在服務的邏輯上,而無需關注分布式軟件開發所需要的通信基礎結構。
108、最后,與托管環境中的 Web 窗體頁相似,您的 XML Web services 將使用 IIS 的可伸縮通信以本機語言的速度運行。
本文到此結束,希望對大家有所幫助。