fbpx
维基百科

.NET框架

.NET框架(英語:.NET Framework)是由微軟開發,一個致力於敏捷軟體開發(agile software development)、快速應用開發(rapid application development)、平臺獨立性和網路透明化的軟體框架。.NET是微軟為2000年代對伺服器桌上型軟體工程邁出的第一步。.NET包含許多有助於互聯網內部网应用迅捷发的技術。

.NET Framework
.NET Framework的组件堆栈
開發者Microsoft
首次发布2002年2月13日,​21年前​(2002-02-13
目前版本
  • 4.8.1 (2022年8月9日)[1]
操作系统Windows 98或更新
Windows NT 4.0或更新
类型軟體框架
许可协议專有軟體
FCL英语Framework Class Library採用微軟Ms-RSL共享源代碼授權[2]
部份採取MIT許可證[3][4]
网站www.microsoft.com/net

.NET框架是微軟公司继Windows DNA之后的新发平台,採用系統虛擬機器運行,以通用語言運行庫(Common Language Runtime)为基础,支援多种語言(C#F#VB.NETC++Python等)的发。

.NET也为應用程式介面(API)提供了新功能和发工具。這些革新使得程式設計員可以同時進行Windows應用軟體網路應用軟體以及元件和服務(web服務)的開發。.NET提供了一個新的反射性的物件導向程式設計編程介面。.NET設計得足夠通用化從而使許多不同高阶語言都得以被汇集

甲骨文公司Java程式語言Java平台企業版技术是.NET平台的竞爭对手之一。

2014年11月12日,微軟宣布完全开放.NET Framework的原始碼,並提供給Linux和macOS使用。[5]

版本

.NET框架版本歷史一覽
版本 通用語言運行庫 發佈時間 隨同Visual Studio分發 預安裝於Windows 包含之前版本
客戶端版 伺服器版
1.0[0] 1.0 2002年2月13日 .NET 不適用 不適用 不適用
1.1 1.1 2003年4月24日 .NET 2003 不適用 2003
2.0 2.0 2005年11月7日 2005 不適用 2003 R2
3.0 2006年11月6日 不適用 Vista 不適用 2.0
3.5 3.5 2007年11月19日 2008 不適用 不適用 3.0 SP1 (2.0 SP1)
3.5.1 2008年2月4日 不適用 不適用 2008
3.5 SP1 2008年8月11日 2008 SP1 不適用 不適用 3.0 SP2 (2.0 SP2)
3.5.1 SP1 2009年7月22日 不適用 7 2008 R2
4 4.0 4.0 2010年4月12日 2010 不適用 不適用 不適用
(置位更新)
4.5 2012年8月15日 2012 8 2012
4.5.1 2013年10月17日 2013 8.1 2012 R2
4.5.2 2014年5月5日 不適用 不適用 不適用
4.6 2015年7月20日 2015 10 不適用
4.6.1 2015年11月30日 2015 Update 1 10 v1511 不適用
4.6.2 2016年8月2日 不適用 10 v1607 2016
4.7 2017年4月5日 2017 v15.3 10 v1703 不適用
4.7.1 2017年10月17日 2017 v15.5 10 v1709 v1709
4.7.2 2018年4月30日 2019 10 v1803 v1803
4.8 2019年4月18日 不適用 10 v1909 v1909
4.8.1 2022年8月9日

0.^ 自SP1起所有Windows XP分发光碟或镜像中均包含1.0版的安装包,并且這個版本作為Windows XP Tablet PC和Media Center版的必要組成元素。
1.^ .Net Framework 1.1 可以部署於Itanium和x86-64平台, 由WOW64支援。
2.^ 在Itanium平台上有些功能不被支援,比如WPF。
3.^ 從版本4.5起,随同Windows RT, Windows RT 8.1運用於ARM v7平台,由於是精簡版,未列於此表。

發行歷史

.NET Framework 1.0

完整版號 - 1.0.3705

這是最早的.NET架構,於2002年發行。它可以以一個獨立且可重新分發的包的形式或在一個軟體發展工具包集中被獲得。它也是第一個微軟Visual Studio .NET的發行版的一部分(也被稱作Visual Studio .NET 2002)。

.NET Framework 1.1

完整版號 - 1.1.4322

這是首個主要的.NET框架升級版本,發行於2003年。它可以以一個獨立的可重新分發的包的形式或在一個軟體發展工具包集中被獲得。它也是第二個微軟Visual Studio .NET版本的一部分(也被稱作Visual Studio .NET 2003)。它也是首個被Windows作業系統-Windows Server 2003所內置的.NET框架版本。

自1.0版本以來的改進:

  • 內建了對mobile ASP.NET控制項的支援。這在1.0版本是以附加功能方式實現的,現在已經集成到框架的內部。
  • 安全方面的變更 - 使得Windows表單代碼以可靠的行為執行,從而可以在Internet環境內安全運行,並且加入了ASP.NET應用程式的代碼安全訪問功能。
  • 內建了對ODBCOracle資料庫的支援。這在1.0版本是以附加功能方式實現的,現在已經集成到框架的內部。
  • .NET Compact Framework- 這是一個用於智慧設備(例如Pocket PC或者SmartPhone)的.NET框架的子集。
  • IPv6的支持。
  • 大量的API變更[6]

.NET Framework 2.0

完整版號 - 2.0.50727.42,發行於2005年10月27日。

.NET Framework 2.0的元件都包含在 Visual Studio 2005和SQL Server 2005里面。通過MSDN Universe版可以免費下載RTM版本。

自1.1版本以來的改進:

  • 大量的API變更[6]
  • 新的API讓需要管理.NET運行庫實例的非.NET的應用程式可以做到這點。這個新的API對.NET運行庫的各種功能,包括:多線程、記憶體分配、代碼載入等[7],提供了很好的控制。它最初是為Microsoft SQL Server能夠有效率的使用.NET運行庫而設計的,因為Microsoft SQL Server擁有它自己的日程管理器和記憶體管理器。

.NET Framework 3.0

發佈日期2006/11/21。曾用名「WinFX」。依然使用.NET Framework 2.0版本的公共語言運行庫(CLR),並加入了適應未來軟體發展方向的4個框架:

.NET Framework 3.5

這個版本將包含一個支持C#和VB.Net中心的語言特性的編譯器,以及對語言整合查詢(LINQ, Language-Integrated Query)的支援。該版本隨Visual Studio 2008一起發佈。

同时,.NET Framework 3.5自动包含.NET Framework 2.0 SP1以及.NET Framework 3.0 SP1,用于为这两个版本提供安全性修复,以及少量新增的类库(如System.DateTimeOffest),此版本提供的新功能有:

  • 扩展方法(Extension Method)属性(Attribute),用于为扩展方法提供支持
  • LINQ支持,包括LINQ to Object、LINQ to ADO.NET以及LINQ to XML
  • 表达式目录树(Expression Tree),用于为Lambda表达式提供支持
  • 与语言集成查询(LINQ)和数据感知紧密集成。借助这个新功能,您可以使用相同的语法,在任何支持LINQ的语言中编写相关代码,以筛选和枚举多种类型的SQL数据、集合、XML和数据集,以及创建它们的投影。
  • 利用ASP.NET AJAX可以创建更有效、更具交互性、高度个性化的Web体验,这些体验在所有最流行的浏览器上都能实现。
  • 用于生成WCF服务的全新Web协议支持,包括AJAX、JSON、REST、POX、RSS、ATOM和若干新的WS-*标准。
  • Visual Studio 2008中面向WF、WCF和WPF的完整工具支持,其中包括支持工作流的服务这一新技术。
  • .NET Framework 3.5基类库(BCL)中的新类可满足许多常见的客户请求。

.NET Framework 3.5 SP1

.NET Framework 3.5 SP1自动包含.NET Framework 2.0 SP2以及.NET Framework 3.0 SP2。该版本随Visual Studio 2008 SP1发布,此版本提供了下列的新功能:

  • 新增的ASP.NET功能包括ASP.NET动态数据和ASP.NET AJAX附加功能,前者提供了无需编写代码就可实现数据驱动的快速开发的丰富支架框架,后者为管理浏览器历史记录提供了支持(后退按钮支持)。
  • ADO.NET Entity Framework。
  • 对SQL Server 2008的数据提供程序支持。
  • .NET Framework客户端配置文件是完整版.NET Framework的子集,面向客户端应用程序。这改善了尚未安装.NET Framework的计算机上的安装体验。
  • 改进Windows Presentation Foundation的性能,其中包括启动速度的位图效果性能的提高。为Windows Presentation Foundation增加的功能包括对业务线应用程序的更好支持、本机闪屏支持、DirectX像素着色器支持以及新的WebBrowser控件。
  • ClickOnce应用程序发布者可以根据具体情况决定是否取消签名和散列,开发人员可以以编程方式安装显示自定义署名的ClickOnce应用程序,ClickOnce错误对话框支持指向网络上特定于应用程序的支持站点的链接。
  • 用于SQL Server的.NET Framework数据提供程序(System.Data.SqlClient)完全支持SQL Server 2008数据库引擎的所有新功能。有关.NET Framework对SQL Server 2008的支持的更多信息,请参见SQL Server中的新功能(ADO.NET)。ADO.NET数据平台是一种多版本策略,它使开发人员能够针对概念性实体数据模型进行编程,从而减轻他们的编码和维护工作。此平台提供了ADO.NET Entity Framework、实体数据模型(EDM)、对象服务、LINQ to Entities、Entity SQL、EntityClient、ADO.NET数据服务及实体数据模型工具。
  • Windows Communication Foundation现在提供了改进的互操作性支持,增强了部分信任方案中的调试体验,并扩展了整合协议支持以更广泛地应用于Web 2.0应用程序,从而使DataContract序列化程序更易于使用。
  • Microsoft.VisualBasic.PowerPacks命名空间引入了新的DataRepeater控件,该控件以可自定义的列表格式显示数据。此命名空间还包含新的矢量形状。

.NET Framework 4.0

  • .NET Framework 4.0主要增加了并行支持,英文版於2010年4月12日推出。[8]
  • 新增System.Lazy <T>,做為延遲初始化時使用。[9]
  • 新增大整數的System.Numerics.BigInteger[10]與複數的System.Numerics.Complex[11](使用時需加入參考System.Numerics.dll)
  • 微軟於2016年1月12開始停止對.NET 4.0, 4.5, 4.5.1的安全性更新及技術支援

.NET Framework 4.5

.NET Framework 4.5是.NET Framework 4高相容性的置位更新(in-place update)。搭配C# 或Visual Basic程式設計語言使用.NET Framework 4.5,即可編寫Windows Store風格的應用程式。.NET Framework 4.5可提升效能、可靠度及安全性。於2012年8月15日推出。但請注意,.NET Framework 4.5只支援Windows Vista SP2以上版本的作業系統。[12]

  • 微軟於2016年1月12開始停止對.NET 4.0, 4.5, 4.5.1的安全性更新及技術支援

.NET Framework 4.5.1

.NET Framework 4.5.1於2013年10月17日隨著Visual Studio 2013發布。[13]此版本需要Windows Vista SP2或更新的環境,[14]並且包含在Windows 8.1和Windows Server 2012 R2中。.NET Framework 4.5.1的新功能有:[15]

  • 偵錯器支持X64編輯和繼續(EnC)
  • 偵錯器支持查看託管返回值
  • “Call Stack”和“Task”視窗中的異步感知偵錯
  • 偵錯器支持分析.NET內存轉儲(在Visual Studio Ultimate SKU中)
  • 適用於Performance 及 Diagnostics中心的.NET開發者工具
  • 代碼分析UI改進
  • ADO.NET空閒連接彈性

.NET Framework 4.5.2

.NET Framework 4.5.2的發表宣佈於2014年5月5日。[16]此版本需要Windows Vista SP2及更新版本。[17]對於Windows Forms應用程序,對高DPI方案進行了改進。對於ASP.NET,可以使用更高可靠性的HTTP開頭檢查和修改方法,這是一種規劃背景異步工作任務的新方法。[16]

.NET Framework 4.6

.NET Framework 4.6 是在2014年11月12月宣佈,[18]而在2015年7月20日發行。[19] 它對64位元系統支援一個新的即時編譯(JIT),稱之為 RyuJIT,呈現較佳的性能,並支援SSE2AVX2指令集。WPF 與 Windows Forms 都獲得更新以達成較高的 DPI 情境。支援TLS 1.1 與 TLS 1.2 的功能已經被加入 WCF。[19] 此版本需要Windows Vista SP2 或更新的版本。[20]

.NET Framework 4.6.1

.NET Framework 4.6.1 發行的訊息在2015年11月30日宣佈。[21]這個版本需要 Windows 7 SP1 或更新的版本。[20]新的功能與 API 包括:

  • WPF改進了拼寫檢查,支援用戶自定義詞典,並改進觸控性能。
  • 增強支援橢圓曲線數字簽名算法(ECDSA)X509 認證。
  • 當連接Azure SQL數據庫時,添加了對AlwaysOn、Always Encrypted的SQL連接,並改進連接開放彈性。
  • Azure SQL數據庫現在使用更新的System.Transactions API支援分散式處理。
  • RyuJIT、GC、WPF和WCF中的許多其他性能、穩定性和可靠性相關修復。

.NET Framework 4.6.2

.NET Framework 4.6.2 的預覽在2016年3月30日宣佈,[22]發行日期則為2016年8月2日。[23]此版本需要 Windows 7 SP1 或更新版。[20] New features include:

  • 支援超過260個字符的路徑
  • 支援X.509認證的FIPS 186-3 DSA
  • TLS 1.1 / 1.2支援 ClickOnce
  • 支援 ASP.NET 數據註釋的本地化
  • 啟用具備 Project Centennial 的 .NET桌面應用程序
  • 針對WPF支援軟鍵盤和每個監視器DPI

.NET Framework 4.7

2017年4月5日,微軟宣佈 .NET Framework 4.7 將被整合到 Windows 10 創作者更新, 承諾為其他Windows版本提供獨立安裝程式。同日,發行一個 Visual Studio 2017 更新版以加強支援標的物 .NET Framework 4.7。[24] 所承諾的 Windows 7 及更新版本獨立安裝程式在2017年5月2日發行,[25] 但有一些重要成份不包含在內。[26]

.NET Framework 4.7 的新功能包括:[27]

  • 使用橢圓曲線密碼學的增強加密
  • 改進對傳輸層安全性協定(TLS)的支援,尤其是對於1.2版
  • 支援Windows Forms 的高DPI感知支援
  • 在 WPF 中對觸控和手寫的更多支援
  • WPF 的新印表 API

.NET Framework 4.7.1

.NET Framework 4.7.1 在2017年10月17日發行。[28]在修復程式和新功能中,它修正了d3dcompiler依賴性問題。 [29]它還增加了與.NET Standard 2.0開箱即用的相容性。[30]

.NET Framework 4.7.2

.NET Framework 4.7.2 在2018年4月30日發行。[31]主要的異動是改進 ASP.NET、BCL、CLR、ClickOnce、Networking、SQL、WCF、Windows Forms、Workflow 及 WPF。[32]

CLR與CLI

 
CLI運作圖

.NET的初級組成是CLI(通用語言架構)和CLR(通用語言運行庫)。

CLI(通用語言架構)全名為Common Language Infrastructure,是一套運作環境規範,包括一般系統、基礎類庫和與機器無關的中間代碼。CLR則是確認操作密碼符合CLI的平臺。在通用中間語言(CIL)執行前,CLR必須將指令及時編譯轉換成原始機械碼

所有CLI都可經由.NET自我表述。CLR檢查元資料以確保正確的方法被調用。元資料通常是由語言編譯器生成的,但開發人員也可以通過使用客戶屬性創建他們自己的元資料。

如果一種語言實現生成了CLI,它也可以通過使用CLR被調用,這樣它就可以與任何其他.NET語言生成的資料相交互。CLR也被設計為作業系統無關性。

當一個彙編體被載入時,CLR執行各種各樣的測試。其中的兩個測試是確認與核查。在確認的時候,CLR檢查彙編體是否包含有效的元資料和CIL,並且檢查內部表的正確性。核查則不那麼精確。核查機制檢查代碼是否會執行一些“不安全”的操作。核查所使用的演算法非常保守,導致有時一些“安全”的代碼也通不過核查。不安全的代碼只有在彙編體擁有“跳過核查”許可的情況下才會被執行,通常這意味著代碼是安裝在本機上的。

通過.NET,你可以用SOAP和不同的web服務進行交互。

標準化和版權

2000年8月,微軟惠普英特爾共同制定CLIC#程式語言的標準規格。2001年12月,以上兩者通過並成為ECMA標準規格。(ECMA 335(页面存档备份,存于互联网档案馆)和ECMA 334(页面存档备份,存于互联网档案馆))。ISO亦於2003年4月跟隨(ISO/IEC 23271(页面存档备份,存于互联网档案馆)和ISO/IEC 23270(页面存档备份,存于互联网档案馆))。

這會有一定的風險,但它可以鼓勵標準聯合的實現,以提供一座橋樑來把非Windows的軟體轉變為微軟.NET。將此推廣為標準的一個團體是國際.NET聯合會(INETA)。

儘管微軟及其他合作夥伴持有CLI及C#的專利,ECMA和ISO要求所有專利都應該遵守“合理與非歧視準則”。除此之外,這些公司亦同意讓使用者免費使用這兩項專利。

不過,這並不包括.NET Framework內並不為ECMA/ISO標準涵蓋的範圍,這包括了:Windows FormsADO.NETASP.NET。微軟對上述部件所持有的專利,使開發者未必能夠為非微軟平臺開發出一套完整的作品。

2014 年11月13日,微軟新任執行長薩帝亞·納德拉決心下,該公司釋出的.NET原始碼包含了伺服器部分的核心,如.NET Framework Libraries.NET Core Framework LibrariesRyuJit VM,正式對外開放原始碼[33]

.NET与Java EE

公共語言基礎(CLI),通用中間語言(CIL)以及C#與甲骨文公司的Java虛擬機和Java之間有不少的相似之處,因此它們無疑是強烈的競爭者。它們兩者都使用它們各自的中間碼(在微軟,它們叫做通用中間語言,而在Oracle,它們叫位元組碼)。通用中間語言被設計來即時編譯(JIT),而Java的位元組碼在最初的時候則是設計成用於解釋運行,而非即時編譯。.NET現在只在Windows上被完美地支持,而Java則可在很多平臺上被完好支持。然而,現在一些正在開發中的實現版本例如Mono或者Shared source CLI可以用於在類Unix作業系統例如LinuxFreeBSDMac OS X上運行.NET應用程式。甲骨文公司的一個產品,J2EE提供與微軟的一些捆綁於Windows中的技術例如COM+(先前的MTS)和MSMQ等效的功能。

Java和.NET可經由IKVM,一個在.NET平臺上實作的Java虛擬機作更多的溝通。

Java有其專門的遠端程式呼叫技術RMI(Remote Method Invocation), RMI的另一版本RMI-IIOP更可相容CORBA

然而,.NET與Java之間的競爭關係,在.NET Core出現後,一切都改觀了。

.NET与COM

前一版軟體元件技術由Microsoft所提出的COM,該技術被用來建立大型(large-scale)的軟體系統上,使用COM+ 或MTS對於傳統分散式元件有強化的作用。當.NET將COM-objects封裝成.NET元件以及將.NET元件封裝成COM-objects後,Microsoft分別將他命名為Runtime Callable Wrapper(RCW)和COM Callable Wrapper(CCW)。很明顯的,Microsoft最終將以.NET全面取代COM成為軟體元件的架構。[來源請求]Microsoft希望開發者能夠在Win32平臺上使用.Net取代COM,而已經存在的服務則透過抽象介面來使用(如:目前交易的.Net元件仍然使用COM+)。

.Net Remoting与XML WebServices

.NET remoting屬於行程(process)內溝通的抽象方法。

Microsoft® .NET Remoting提供一個豐富可擴充的框架給存在兩個不同AppDomain中的Object,使得在不同行程(行程)和不同機器中能夠進行無縫地溝通。.NET Remoting提供一種強大但簡單的可程式化模型並且在執行階段支援資料交換。

XML Web services將基礎的功能區塊佈署到網路的不同電腦上。開放標準的通訊協定以及人和應用程式可以透過Web Services整合應用程式的環境來合作。應用程式可以從不同的來源使用多個XML Web Services來建構應用程式而不需要知道他們在哪裡以及如何來運作。

.NET的語言

CLI被設計成支援任何物件導向的程式語言,分享共同物件模型與大型共同類別庫。.NET支援超過40種程式語言。這些編譯器大都是免費的(软件廠商仅开发出售集成开发环境)。

大部分的語言都做了重大改變以搭配.NET Framework。廠商通常利用這個機會來同時改變語言的其他特性。

微軟開發的.NET平臺編程語言

第三方使用.NET的編程語言

ASP.NET & ADO.NET

ASP.NET是內含於.NET Framework中,專門用來發展Web應用程式的一組類別庫集。

ADO.NET是內含於.NET Framework中,專門處理與資料來源溝通的資料存取類別庫集,被Windows FormsASP.NET應用程式大量使用,可說是.NET Framework中唯一的資料存取介面。

可供選擇的實現版本

微軟的.NET Framework是.NET技術的旗艦級實現版本,在此之外還有一些其他實現版本。

  • Mono是一個開源的.NET運行時和開發庫實現版本。Mono現正由xamarin公司和開源軟體發展社區負責開發。它正迅速發展成熟,現已經包含了對ASP.NET和ADO.NET的支持,对Windows Forms庫的支持也较充分。它提供了一個C#編譯器,而一個VB.NET編譯器現在也已經處於pre-beta階段。Mono項目還包含了一些新的庫和技術的開發:
    • Gtk:一個GTK+GUI工具包的.NET封裝。
    • xSP:一個用C#編寫的支持運行ASP.NET應用程式的網頁伺服器軟體。
    • MonoDevelopSharpDevelop的一個移植版本,是一個符合GPL標準的面向Gtk#和Mono的.NET集成開發環境。
    • Novell.Directory.Ldap類庫:Lightweight Directory Access Protocol(LDAP)for .NET的一個免費的實現版本。
    • SerialPortNet:Aserial portlibrary for .Net & Mono implementing .NET 2.0 specifications.
    • Mono for Android和MonoTouch for iOS:Mono在移动平台Android和iOS上的移植,使开发者可以在Android和iOS平台上使用C#和Mono框架开发应用。Xamarin Forms是这些实现的核心,可以根据系统不同生成符合该系统风格的界面。
    • MonoMac:Mono对于一些OS X原生Step API的封装。
  • Portable.NET不及Mono成熟,這得歸因於Portable.NET並不是在最初的時候就使用了微軟的開發框架。提供了一个可以从C编译到通用中间语言的编译器。

參見

参考文献

  1. ^ https://devblogs.microsoft.com/dotnet/announcing-dotnet-framework-481/.
  2. ^ Scott Guthrie. . 2007-10-03 [2010-09-15]. (原始内容存档于2010-09-07). 
  3. ^ .NET Core is Open Source. .NET Framework Blog. Microsoft. [2014-11-12]. (原始内容于2014-12-31). 
  4. ^ Foley, Mary Jo. Microsoft to open source more of .NET, and bring it to Linux, Mac OS X. ZDNet. [2014-11-12]. (原始内容于2014-11-12). 
  5. ^ Announcing Open Source of .NET Core Framework, .NET Core Distribution for Linux/OSX, and Free Visual Studio Community Edition. microsoft. [2014-11-12]. (原始内容于2014-11-12). 
  6. ^ 6.0 6.1 . [2006-12-15]. (原始内容存档于2007-01-10).  GotDotNet: API Changes between versions of the .NET Framework
  7. ^ . [2006-12-15]. (原始内容存档于2005-11-19).  詳細說明
  8. ^ What's New in the .NET Framework 4. MSDN Library. Microsoft. [2013-09-09]. (原始内容于2013-10-21). 
  9. ^ Lazy<T> Class. MSDN Library. Microsoft. [2013-09-09]. (原始内容于2013-10-21). 
  10. ^ BigInteger Structure. MSDN Library. Microsoft. [2013-09-09]. (原始内容于2014-01-12). 
  11. ^ Complex Structure. MSDN Library. Microsoft. [2013-09-09]. (原始内容于2012-12-12). 
  12. ^ Download Microsoft .NET Framework 4.5 from Official Microsoft Download Center. microsoft. [2014-04-15]. (原始内容于2014-04-15). 
  13. ^ .NET Framework 4.5.1 RTM => start coding. .NET Framework Blog. Microsoft. 2013-10-17 [2013-11-18]. (原始内容于2013-11-22). 
  14. ^ Microsoft .NET Framework 4.5.1 (Offline Installer). Download Center. Microsoft. 2013-10-12 [2013-11-18]. (原始内容于2013-11-28). 
  15. ^ .NET Framework 4.5.1 RTM => start coding. MSDN Blogs. Microsoft. [2016-10-04]. (原始内容于2016-10-09). 
  16. ^ 16.0 16.1 Announcing the .NET Framework 4.5.2. MSDN Blogs. Microsoft. [2014-06-11]. (原始内容于2017-03-14). 
  17. ^ Microsoft .NET Framework 4.5.2 (Offline Installer). Download Center. Microsoft. 2014-05-06 [2017-05-06]. (原始内容于2017-05-04). 
  18. ^ .NET Team. Announcing .NET 2015 Preview: A New Era for .NET. [2015-02-27]. (原始内容于2015-02-28). 
  19. ^ 19.0 19.1 Lander, Rich. Announcing .NET Framework 4.6. .NET Blog. Microsoft. 2015-07-20 [2018-07-10]. (原始内容于2015-07-20). The team is updating the System.Security.Cryptography APIs to support the Windows CNG cryptography APIs [...] since it supports modern cryptography algorithms [Suite B Support], which are important for certain categories of apps. 
  20. ^ 20.0 20.1 20.2 .NET Framework System Requirements. MSDN. Microsoft. [2016-08-18]. (原始内容于2016-08-06). 
  21. ^ .NET Framework 4.6.1 is now available!. MSDN Blogs. Microsoft. [2016-02-19]. (原始内容于2016-08-27). 
  22. ^ Announcing the .NET Framework 4.6.2 Preview. .NET Blog. Microsoft. [2018-07-10]. (原始内容于2018-07-10). 
  23. ^ Announcing .NET Framework 4.6.2. .NET Blog. Microsoft. [2018-07-10]. (原始内容于2016-10-24). 
  24. ^ Lander, Rich. Announcing the .NET Framework 4.7. .NET Blog. Microsoft. 2017-04-05 [2018-07-10]. (原始内容于2018-07-10). 
  25. ^ Microsoft .NET Framework 4.7 (Offline Installer). Download Center. Microsoft. 2017-05-02 [2018-07-10]. (原始内容于2018-07-10). 
  26. ^ The .NET Framework 4.7 installation is blocked on Windows 7, Windows Server 2008 R2 and Windows Server 2012 because of a missing d3dcompiler update. Support. Microsoft. 2017-05-03 [2018-07-10]. (原始内容于2018-07-28). 
  27. ^ What's New in the .NET Framework. docs.microsoft.com. Microsoft. [2017-04-28]. 
  28. ^ Krishna, Preeti. Announcing the .NET Framework 4.7.1. .NET Blog. Microsoft. 2017-10-17 [2018-12-21]. (原始内容于2017-12-31). 
  29. ^ Announcing the .NET Framework 4.7.1. microsoft.com. [2018-12-21]. (原始内容于2017-12-31). 
  30. ^ Immo Landwerth, .NET Standard - .NET Framework 4.7.1, 2017-09-27 [2018-04-25], (原始内容于2018-09-19) 
  31. ^ Announcing the .NET Framework 4.7.2. [2018-06-12]. (原始内容于2018-06-12) (美国英语). 
  32. ^ What's new in the .NET Framework. microsoft.com. [2018-07-10]. (原始内容于2017-11-29). 
  33. ^ 微軟果然走向開放,.NET 開放原始碼可望開發 Linux 與 OS X 軟體 (页面存档备份,存于互联网档案馆),TechNews 科技新報,2014-11-13

外部链接

  • 官方网站  
  • Overview of .NET Framework (MSDN)(页面存档备份,存于互联网档案馆(英文)
    • .NET Framework 概述(页面存档备份,存于互联网档案馆(简体中文)
    • .NET Framework 的概觀(页面存档备份,存于互联网档案馆(繁體中文)
  • .NET Github repository(页面存档备份,存于互联网档案馆

net框架, 关于最新版本的框架, 请见, 本條目存在以下問題, 請協助改善本條目或在討論頁針對議題發表看法, 此條目需要精通或熟悉相关主题的编者参与及协助编辑, 2018年7月10日, 請邀請適合的人士改善本条目, 更多的細節與詳情請參见討論頁, 此條目需要更新, 2018年6月3日, 請更新本文以反映近況和新增内容, 完成修改時, 請移除本模板, 此條目需要补充更多来源, 2015年8月6日, 请协助補充多方面可靠来源以改善这篇条目, 无法查证的内容可能會因為异议提出而移除, 致使用者, 请搜索一下条目的标题,. 关于最新版本的框架 请见 NET 本條目存在以下問題 請協助改善本條目或在討論頁針對議題發表看法 此條目需要精通或熟悉相关主题的编者参与及协助编辑 2018年7月10日 請邀請適合的人士改善本条目 更多的細節與詳情請參见討論頁 此條目需要更新 2018年6月3日 請更新本文以反映近況和新增内容 完成修改時 請移除本模板 此條目需要补充更多来源 2015年8月6日 请协助補充多方面可靠来源以改善这篇条目 无法查证的内容可能會因為异议提出而移除 致使用者 请搜索一下条目的标题 来源搜索 NET框架 网页 新闻 书籍 学术 图像 以检查网络上是否存在该主题的更多可靠来源 判定指引 NET框架 英語 NET Framework 是由微軟開發 一個致力於敏捷軟體開發 agile software development 快速應用開發 rapid application development 平臺獨立性和網路透明化的軟體框架 NET是微軟為2000年代對伺服器和桌上型軟體工程邁出的第一步 NET包含許多有助於互聯網和內部网应用迅捷发的技術 NET Framework NET Framework的组件堆栈開發者Microsoft首次发布2002年2月13日 21年前 2002 02 13 目前版本4 8 1 2022年8月9日 1 操作系统Windows 98或更新Windows NT 4 0或更新类型軟體框架许可协议專有軟體FCL 英语 Framework Class Library 採用微軟Ms RSL共享源代碼授權 2 部份採取MIT許可證 3 4 网站www wbr microsoft wbr com wbr net NET框架是微軟公司继Windows DNA之后的新发平台 採用系統虛擬機器運行 以通用語言運行庫 Common Language Runtime 为基础 支援多种語言 C F VB NET C Python等 的发 NET也为應用程式介面 API 提供了新功能和发工具 這些革新使得程式設計員可以同時進行Windows應用軟體和網路應用軟體以及元件和服務 web服務 的開發 NET提供了一個新的反射性的且物件導向程式設計編程介面 NET設計得足夠通用化從而使許多不同高阶語言都得以被汇集 甲骨文公司的Java程式語言和Java平台企業版技术是 NET平台的竞爭对手之一 2014年11月12日 微軟宣布完全开放 NET Framework的原始碼 並提供給Linux和macOS使用 5 目录 1 版本 2 發行歷史 2 1 NET Framework 1 0 2 2 NET Framework 1 1 2 3 NET Framework 2 0 2 4 NET Framework 3 0 2 5 NET Framework 3 5 2 5 1 NET Framework 3 5 SP1 2 6 NET Framework 4 0 2 7 NET Framework 4 5 2 7 1 NET Framework 4 5 1 2 7 2 NET Framework 4 5 2 2 8 NET Framework 4 6 2 8 1 NET Framework 4 6 1 2 8 2 NET Framework 4 6 2 2 9 NET Framework 4 7 2 9 1 NET Framework 4 7 1 2 9 2 NET Framework 4 7 2 3 CLR與CLI 4 標準化和版權 5 NET与Java EE 6 NET与COM 7 Net Remoting与XML WebServices 8 NET的語言 8 1 微軟開發的 NET平臺編程語言 8 2 第三方使用 NET的編程語言 8 3 ASP NET amp ADO NET 9 可供選擇的實現版本 10 參見 11 参考文献 12 外部链接版本 编辑 NET框架版本歷史一覽 版本 通用語言運行庫 發佈時間 隨同Visual Studio分發 預安裝於Windows 包含之前版本客戶端版 伺服器版1 0 0 1 0 2002年2月13日 NET 不適用 不適用 不適用1 1 1 1 2003年4月24日 NET 2003 不適用 20032 0 2 0 2005年11月7日 2005 不適用 2003 R23 0 2006年11月6日 不適用 Vista 不適用 2 03 5 3 5 2007年11月19日 2008 不適用 不適用 3 0 SP1 2 0 SP1 3 5 1 2008年2月4日 不適用 不適用 20083 5 SP1 2008年8月11日 2008 SP1 不適用 不適用 3 0 SP2 2 0 SP2 3 5 1 SP1 2009年7月22日 不適用 7 2008 R24 4 0 4 0 2010年4月12日 2010 不適用 不適用 不適用 置位更新 4 5 2012年8月15日 2012 8 20124 5 1 2013年10月17日 2013 8 1 2012 R24 5 2 2014年5月5日 不適用 不適用 不適用4 6 2015年7月20日 2015 10 不適用4 6 1 2015年11月30日 2015 Update 1 10 v1511 不適用4 6 2 2016年8月2日 不適用 10 v1607 20164 7 2017年4月5日 2017 v15 3 10 v1703 不適用4 7 1 2017年10月17日 2017 v15 5 10 v1709 v17094 7 2 2018年4月30日 2019 10 v1803 v18034 8 2019年4月18日 不適用 10 v1909 v19094 8 1 2022年8月9日平台支援信息一覽 版本 指令集架構 Windows版本個人電腦 Windows Server1 0 IA 32 98 ME NT 4 0 SP6a 2000 XP NT 4 0 SP6a 20001 1 IA 32 1 NT 4 0 SP6a 2000 XP Vista NT 4 0 SP6a 2000 2003 20082 0 3 5 IA 32 Itanium x86 64 XP Vista 7 8 8 1 10 2003 2003 R2 2008 2008 R2 2012 2012 R2 2016 20194 0 IA 32 Itanium 2 x86 64 XP SP3 Vista SP1 7 8 8 1 10 2003 SP2 2003 R2 SP2 2008 2008 R2 2012 2012 R2 2016 20194 5 3 4 6 IA 32 x86 64 Vista SP2 7 SP1 8 8 1 10 2008 SP2 2008 R2 SP1 2012 2012 R2 2016 20194 6 1 7 SP1 8 8 1 10 2008 R2 SP1 2012 2012 R2 2016 20194 6 2 4 8 7 SP1 8 1 10 v1607起4 8 1 IA 32 x86 64 ARM64 10 v20H2 v21H2 11 v21H2 20220 自SP1起所有Windows XP分发光碟或镜像中均包含1 0版的安装包 并且這個版本作為Windows XP Tablet PC和Media Center版的必要組成元素 1 Net Framework 1 1 可以部署於Itanium和x86 64平台 由WOW64支援 2 在Itanium平台上有些功能不被支援 比如WPF 3 從版本4 5起 随同Windows RT Windows RT 8 1運用於ARM v7平台 由於是精簡版 未列於此表 發行歷史 编辑有用户建议将本章節或段落拆分至 NET框架版本历史 或其他条目 讨论 主条目 NET框架版本历史 英语 NET Framework version history NET Framework 1 0 编辑 完整版號 1 0 3705這是最早的 NET架構 於2002年發行 它可以以一個獨立且可重新分發的包的形式或在一個軟體發展工具包集中被獲得 它也是第一個微軟Visual Studio NET的發行版的一部分 也被稱作Visual Studio NET 2002 NET Framework 1 1 编辑 完整版號 1 1 4322這是首個主要的 NET框架升級版本 發行於2003年 它可以以一個獨立的可重新分發的包的形式或在一個軟體發展工具包集中被獲得 它也是第二個微軟Visual Studio NET版本的一部分 也被稱作Visual Studio NET 2003 它也是首個被Windows作業系統 Windows Server 2003所內置的 NET框架版本 自1 0版本以來的改進 內建了對mobile ASP NET控制項的支援 這在1 0版本是以附加功能方式實現的 現在已經集成到框架的內部 安全方面的變更 使得Windows表單代碼以可靠的行為執行 從而可以在Internet環境內安全運行 並且加入了ASP NET應用程式的代碼安全訪問功能 內建了對ODBC和Oracle資料庫的支援 這在1 0版本是以附加功能方式實現的 現在已經集成到框架的內部 NET Compact Framework 這是一個用於智慧設備 例如Pocket PC或者SmartPhone 的 NET框架的子集 對IPv6的支持 大量的API變更 6 NET Framework 2 0 编辑 完整版號 2 0 50727 42 發行於2005年10月27日 NET Framework 2 0的元件都包含在 Visual Studio 2005和SQL Server 2005里面 通過MSDN Universe版可以免費下載RTM版本 自1 1版本以來的改進 大量的API變更 6 新的API讓需要管理 NET運行庫實例的非 NET的應用程式可以做到這點 這個新的API對 NET運行庫的各種功能 包括 多線程 記憶體分配 代碼載入等 7 提供了很好的控制 它最初是為Microsoft SQL Server能夠有效率的使用 NET運行庫而設計的 因為Microsoft SQL Server擁有它自己的日程管理器和記憶體管理器 NET Framework 3 0 编辑 主条目 NET Framework 3 0 發佈日期2006 11 21 曾用名 WinFX 依然使用 NET Framework 2 0版本的公共語言運行庫 CLR 並加入了適應未來軟體發展方向的4個框架 Windows Presentation Foundation WPF 提供更佳的用戶體驗 用來開發Windows Forms程式以及浏览器應用程式 參見WPF E Windows Communication Foundation WCF 提供SOA 面向服務的軟體構架 支援的安全的網路服務 Web Service 框架 Windows Workflow Foundation WF 提供一個設計與發展工作流程導向 Workflow oriented 應用程式基礎支援的應用程式介面 Windows CardSpace 提供一個SSO的解決方案 每個使用者都有各自的CardSpace NET Framework 3 5 编辑 這個版本將包含一個支持C 和VB Net中心的語言特性的編譯器 以及對語言整合查詢 LINQ Language Integrated Query 的支援 該版本隨Visual Studio 2008一起發佈 同时 NET Framework 3 5自动包含 NET Framework 2 0 SP1以及 NET Framework 3 0 SP1 用于为这两个版本提供安全性修复 以及少量新增的类库 如System DateTimeOffest 此版本提供的新功能有 扩展方法 Extension Method 属性 Attribute 用于为扩展方法提供支持 LINQ支持 包括LINQ to Object LINQ to ADO NET以及LINQ to XML 表达式目录树 Expression Tree 用于为Lambda表达式提供支持 与语言集成查询 LINQ 和数据感知紧密集成 借助这个新功能 您可以使用相同的语法 在任何支持LINQ的语言中编写相关代码 以筛选和枚举多种类型的SQL数据 集合 XML和数据集 以及创建它们的投影 利用ASP NET AJAX可以创建更有效 更具交互性 高度个性化的Web体验 这些体验在所有最流行的浏览器上都能实现 用于生成WCF服务的全新Web协议支持 包括AJAX JSON REST POX RSS ATOM和若干新的WS 标准 Visual Studio 2008中面向WF WCF和WPF的完整工具支持 其中包括支持工作流的服务这一新技术 NET Framework 3 5基类库 BCL 中的新类可满足许多常见的客户请求 NET Framework 3 5 SP1 编辑 NET Framework 3 5 SP1自动包含 NET Framework 2 0 SP2以及 NET Framework 3 0 SP2 该版本随Visual Studio 2008 SP1发布 此版本提供了下列的新功能 新增的ASP NET功能包括ASP NET动态数据和ASP NET AJAX附加功能 前者提供了无需编写代码就可实现数据驱动的快速开发的丰富支架框架 后者为管理浏览器历史记录提供了支持 后退按钮支持 ADO NET Entity Framework 对SQL Server 2008的数据提供程序支持 NET Framework客户端配置文件是完整版 NET Framework的子集 面向客户端应用程序 这改善了尚未安装 NET Framework的计算机上的安装体验 改进Windows Presentation Foundation的性能 其中包括启动速度的位图效果性能的提高 为Windows Presentation Foundation增加的功能包括对业务线应用程序的更好支持 本机闪屏支持 DirectX像素着色器支持以及新的WebBrowser控件 ClickOnce应用程序发布者可以根据具体情况决定是否取消签名和散列 开发人员可以以编程方式安装显示自定义署名的ClickOnce应用程序 ClickOnce错误对话框支持指向网络上特定于应用程序的支持站点的链接 用于SQL Server的 NET Framework数据提供程序 System Data SqlClient 完全支持SQL Server 2008数据库引擎的所有新功能 有关 NET Framework对SQL Server 2008的支持的更多信息 请参见SQL Server中的新功能 ADO NET ADO NET数据平台是一种多版本策略 它使开发人员能够针对概念性实体数据模型进行编程 从而减轻他们的编码和维护工作 此平台提供了ADO NET Entity Framework 实体数据模型 EDM 对象服务 LINQ to Entities Entity SQL EntityClient ADO NET数据服务及实体数据模型工具 Windows Communication Foundation现在提供了改进的互操作性支持 增强了部分信任方案中的调试体验 并扩展了整合协议支持以更广泛地应用于Web 2 0应用程序 从而使DataContract序列化程序更易于使用 Microsoft VisualBasic PowerPacks命名空间引入了新的DataRepeater控件 该控件以可自定义的列表格式显示数据 此命名空间还包含新的矢量形状 NET Framework 4 0 编辑 NET Framework 4 0主要增加了并行支持 英文版於2010年4月12日推出 8 新增System Lazy lt T gt 做為延遲初始化時使用 9 新增大整數的System Numerics BigInteger 10 與複數的System Numerics Complex 11 使用時需加入參考System Numerics dll 微軟於2016年1月12開始停止對 NET 4 0 4 5 4 5 1的安全性更新及技術支援 NET Framework 4 5 编辑 NET Framework 4 5是 NET Framework 4高相容性的置位更新 in place update 搭配C 或Visual Basic程式設計語言使用 NET Framework 4 5 即可編寫Windows Store風格的應用程式 NET Framework 4 5可提升效能 可靠度及安全性 於2012年8月15日推出 但請注意 NET Framework 4 5只支援Windows Vista SP2以上版本的作業系統 12 微軟於2016年1月12開始停止對 NET 4 0 4 5 4 5 1的安全性更新及技術支援 NET Framework 4 5 1 编辑 NET Framework 4 5 1於2013年10月17日隨著Visual Studio 2013發布 13 此版本需要Windows Vista SP2或更新的環境 14 並且包含在Windows 8 1和Windows Server 2012 R2中 NET Framework 4 5 1的新功能有 15 偵錯器支持X64編輯和繼續 EnC 偵錯器支持查看託管返回值 Call Stack 和 Task 視窗中的異步感知偵錯 偵錯器支持分析 NET內存轉儲 在Visual Studio Ultimate SKU中 適用於Performance 及 Diagnostics中心的 NET開發者工具 代碼分析UI改進 ADO NET空閒連接彈性 NET Framework 4 5 2 编辑 NET Framework 4 5 2的發表宣佈於2014年5月5日 16 此版本需要Windows Vista SP2及更新版本 17 對於Windows Forms應用程序 對高DPI方案進行了改進 對於ASP NET 可以使用更高可靠性的HTTP開頭檢查和修改方法 這是一種規劃背景異步工作任務的新方法 16 NET Framework 4 6 编辑 NET Framework 4 6 是在2014年11月12月宣佈 18 而在2015年7月20日發行 19 它對64位元系統支援一個新的即時編譯 JIT 稱之為 RyuJIT 呈現較佳的性能 並支援SSE2與AVX2指令集 WPF 與 Windows Forms 都獲得更新以達成較高的 DPI 情境 支援TLS 1 1 與 TLS 1 2 的功能已經被加入 WCF 19 此版本需要Windows Vista SP2 或更新的版本 20 NET Framework 4 6 1 编辑 NET Framework 4 6 1 發行的訊息在2015年11月30日宣佈 21 這個版本需要 Windows 7 SP1 或更新的版本 20 新的功能與 API 包括 WPF改進了拼寫檢查 支援用戶自定義詞典 並改進觸控性能 增強支援橢圓曲線數字簽名算法 ECDSA X509 認證 當連接Azure SQL數據庫時 添加了對AlwaysOn Always Encrypted的SQL連接 並改進連接開放彈性 Azure SQL數據庫現在使用更新的System Transactions API支援分散式處理 RyuJIT GC WPF和WCF中的許多其他性能 穩定性和可靠性相關修復 NET Framework 4 6 2 编辑 NET Framework 4 6 2 的預覽在2016年3月30日宣佈 22 發行日期則為2016年8月2日 23 此版本需要 Windows 7 SP1 或更新版 20 New features include 支援超過260個字符的路徑 支援X 509認證的FIPS 186 3 DSA TLS 1 1 1 2支援 ClickOnce 支援 ASP NET 數據註釋的本地化 啟用具備 Project Centennial 的 NET桌面應用程序 針對WPF支援軟鍵盤和每個監視器DPI NET Framework 4 7 编辑 2017年4月5日 微軟宣佈 NET Framework 4 7 將被整合到 Windows 10 創作者更新 承諾為其他Windows版本提供獨立安裝程式 同日 發行一個 Visual Studio 2017 更新版以加強支援標的物 NET Framework 4 7 24 所承諾的 Windows 7 及更新版本獨立安裝程式在2017年5月2日發行 25 但有一些重要成份不包含在內 26 NET Framework 4 7 的新功能包括 27 使用橢圓曲線密碼學的增強加密 改進對傳輸層安全性協定 TLS 的支援 尤其是對於1 2版 支援Windows Forms 的高DPI感知支援 在 WPF 中對觸控和手寫的更多支援 WPF 的新印表 API NET Framework 4 7 1 编辑 NET Framework 4 7 1 在2017年10月17日發行 28 在修復程式和新功能中 它修正了d3dcompiler依賴性問題 29 它還增加了與 NET Standard 2 0開箱即用的相容性 30 NET Framework 4 7 2 编辑 NET Framework 4 7 2 在2018年4月30日發行 31 主要的異動是改進 ASP NET BCL CLR ClickOnce Networking SQL WCF Windows Forms Workflow 及 WPF 32 CLR與CLI 编辑 CLI運作圖 NET的初級組成是CLI 通用語言架構 和CLR 通用語言運行庫 CLI 通用語言架構 全名為Common Language Infrastructure 是一套運作環境規範 包括一般系統 基礎類庫和與機器無關的中間代碼 CLR則是確認操作密碼符合CLI的平臺 在通用中間語言 CIL 執行前 CLR必須將指令及時編譯轉換成原始機械碼 所有CLI都可經由 NET自我表述 CLR檢查元資料以確保正確的方法被調用 元資料通常是由語言編譯器生成的 但開發人員也可以通過使用客戶屬性創建他們自己的元資料 如果一種語言實現生成了CLI 它也可以通過使用CLR被調用 這樣它就可以與任何其他 NET語言生成的資料相交互 CLR也被設計為作業系統無關性 當一個彙編體被載入時 CLR執行各種各樣的測試 其中的兩個測試是確認與核查 在確認的時候 CLR檢查彙編體是否包含有效的元資料和CIL 並且檢查內部表的正確性 核查則不那麼精確 核查機制檢查代碼是否會執行一些 不安全 的操作 核查所使用的演算法非常保守 導致有時一些 安全 的代碼也通不過核查 不安全的代碼只有在彙編體擁有 跳過核查 許可的情況下才會被執行 通常這意味著代碼是安裝在本機上的 通過 NET 你可以用SOAP和不同的web服務進行交互 標準化和版權 编辑2000年8月 微軟 惠普和英特爾共同制定CLI和C 程式語言的標準規格 2001年12月 以上兩者通過並成為ECMA標準規格 ECMA 335 页面存档备份 存于互联网档案馆 和ECMA 334 页面存档备份 存于互联网档案馆 ISO亦於2003年4月跟隨 ISO IEC 23271 页面存档备份 存于互联网档案馆 和ISO IEC 23270 页面存档备份 存于互联网档案馆 這會有一定的風險 但它可以鼓勵標準聯合的實現 以提供一座橋樑來把非Windows的軟體轉變為微軟 NET 將此推廣為標準的一個團體是國際 NET聯合會 INETA 儘管微軟及其他合作夥伴持有CLI及C 的專利 ECMA和ISO要求所有專利都應該遵守 合理與非歧視準則 除此之外 這些公司亦同意讓使用者免費使用這兩項專利 不過 這並不包括 NET Framework內並不為ECMA ISO標準涵蓋的範圍 這包括了 Windows Forms ADO NET及ASP NET 微軟對上述部件所持有的專利 使開發者未必能夠為非微軟平臺開發出一套完整的作品 2014 年11月13日 微軟新任執行長薩帝亞 納德拉決心下 該公司釋出的 NET 原始碼包含了伺服器部分的核心 如 NET Framework Libraries NET Core Framework Libraries 和RyuJit VM 正式對外開放原始碼 33 NET与Java EE 编辑公共語言基礎 CLI 通用中間語言 CIL 以及C 與甲骨文公司的Java虛擬機和Java之間有不少的相似之處 因此它們無疑是強烈的競爭者 它們兩者都使用它們各自的中間碼 在微軟 它們叫做通用中間語言 而在Oracle 它們叫位元組碼 通用中間語言被設計來即時編譯 JIT 而Java的位元組碼在最初的時候則是設計成用於解釋運行 而非即時編譯 NET現在只在Windows上被完美地支持 而Java則可在很多平臺上被完好支持 然而 現在一些正在開發中的實現版本例如Mono或者Shared source CLI可以用於在類Unix作業系統例如Linux FreeBSD和Mac OS X上運行 NET應用程式 甲骨文公司的一個產品 J2EE提供與微軟的一些捆綁於Windows中的技術例如COM 先前的MTS 和MSMQ等效的功能 Java和 NET可經由IKVM 一個在 NET平臺上實作的Java虛擬機作更多的溝通 Java有其專門的遠端程式呼叫技術RMI Remote Method Invocation RMI的另一版本RMI IIOP更可相容CORBA 然而 NET與Java之間的競爭關係 在 NET Core出現後 一切都改觀了 NET与COM 编辑請注意 请不要將網域名稱中的 com net與這裡的COM NET混淆在一起 前一版軟體元件技術由Microsoft所提出的COM 該技術被用來建立大型 large scale 的軟體系統上 使用COM 或MTS對於傳統分散式元件有強化的作用 當 NET將COM objects封裝成 NET元件以及將 NET元件封裝成COM objects後 Microsoft分別將他命名為Runtime Callable Wrapper RCW 和COM Callable Wrapper CCW 很明顯的 Microsoft最終將以 NET全面取代COM成為軟體元件的架構 來源請求 Microsoft希望開發者能夠在Win32平臺上使用 Net取代COM 而已經存在的服務則透過抽象介面來使用 如 目前交易的 Net元件仍然使用COM Net Remoting与XML WebServices 编辑 NET remoting屬於行程 process 內溝通的抽象方法 Microsoft NET Remoting提供一個豐富可擴充的框架給存在兩個不同AppDomain中的Object 使得在不同行程 行程 和不同機器中能夠進行無縫地溝通 NET Remoting提供一種強大但簡單的可程式化模型並且在執行階段支援資料交換 XML Web services將基礎的功能區塊佈署到網路的不同電腦上 開放標準的通訊協定以及人和應用程式可以透過Web Services整合應用程式的環境來合作 應用程式可以從不同的來源使用多個XML Web Services來建構應用程式而不需要知道他們在哪裡以及如何來運作 NET的語言 编辑CLI被設計成支援任何物件導向的程式語言 分享共同物件模型與大型共同類別庫 NET支援超過40種程式語言 這些編譯器大都是免費的 软件廠商仅开发出售集成开发环境 大部分的語言都做了重大改變以搭配 NET Framework 廠商通常利用這個機會來同時改變語言的其他特性 微軟開發的 NET平臺編程語言 编辑 C 一個以C 和Java語法為基礎開發的一個全新的物件導向語言 是 NET開發的首選語言 Visual Basic NET 一個加強了物件導向支持的 支持多線程的Visual Basic版本 C CLI 一個C 的 NET平臺版本變種 JScript NET 一個編譯版本的MicrosoftJScript語言 J 一個對應於Java和J 微軟自己開發的Java變種 的 NET平臺版本 但是由于知识产权问题 目前微软公司已经停止其开发应用 F ML語言家族的一員 Microsoft Small Basic第三方使用 NET的編程語言 编辑 Ada 參閱A APL Boo 基於Python COBOL Component Pascal 基於部件的Pascal 比起Pascal來更接近於Oberon Delphi 8 and Delphi 2005以及现在的delphi xe2都采用 net Eiffel Forth FORTRAN IKVM Java IronPython 基於Python IronRuby 基于Ruby Lexico 基於西班牙語的面向物件編程語言 Lisp Mercury Mondrian為了便於腳本部件編程而開發的功能型語言 Nemerle函數式 指令式混合語言 Oberon Perl Phalanger PHP的 net编译器 RPG Smalltalk TclBridge 基于Tcl PowerBuilder NET powerbuilder 11 5及以后的版本都采用 net技术 但这种语言目前停止开发了 ASP NET amp ADO NET 编辑 主条目 ASP NET和ADO NET ASP NET是內含於 NET Framework中 專門用來發展Web應用程式的一組類別庫集 ADO NET是內含於 NET Framework中 專門處理與資料來源溝通的資料存取類別庫集 被Windows Forms與ASP NET應用程式大量使用 可說是 NET Framework中唯一的資料存取介面 可供選擇的實現版本 编辑微軟的 NET Framework是 NET技術的旗艦級實現版本 在此之外還有一些其他實現版本 NET Core 是微軟開發的跨平台 Windows Mac OSX Linux 的應用程式開發框架 Application Framework 微軟开发了一个称为共享源码公共语言基础 Shared Source Common Language Infrastructure Shared Source CLI 即今ECMA 通用语言架构 是微軟的 NET Framework 共通語言執行平臺 的一個源碼共用的實現架构 可運行於Windows XP FreeBSD 和Mac OS X10 2 Mono是一個開源的 NET運行時和開發庫實現版本 Mono現正由xamarin公司和開源軟體發展社區負責開發 它正迅速發展成熟 現已經包含了對ASP NET和ADO NET的支持 对Windows Forms庫的支持也较充分 它提供了一個C 編譯器 而一個VB NET編譯器現在也已經處於pre beta階段 Mono項目還包含了一些新的庫和技術的開發 Gtk 一個GTK GUI工具包的 NET封裝 xSP 一個用C 編寫的支持運行ASP NET應用程式的網頁伺服器軟體 MonoDevelop SharpDevelop的一個移植版本 是一個符合GPL標準的面向Gtk 和Mono的 NET集成開發環境 Novell Directory Ldap類庫 Lightweight Directory Access Protocol LDAP for NET的一個免費的實現版本 SerialPortNet Aserial portlibrary for Net amp Mono implementing NET 2 0 specifications Mono for Android和MonoTouch for iOS Mono在移动平台Android和iOS上的移植 使开发者可以在Android和iOS平台上使用C 和Mono框架开发应用 Xamarin Forms是这些实现的核心 可以根据系统不同生成符合该系统风格的界面 MonoMac Mono对于一些OS X原生Step API的封装 Portable NET不及Mono成熟 這得歸因於Portable NET並不是在最初的時候就使用了微軟的開發框架 提供了一个可以从C编译到通用中间语言的编译器 參見 编辑 微软主题 软件主题 计算机程序设计主题 C VB NET ASP NET AJAX COM Interop Windows API NET Compact Framework NET Micro Framework参考文献 编辑 https devblogs microsoft com dotnet announcing dotnet framework 481 Scott Guthrie Releasing the Source Code for the NET Framework 2007 10 03 2010 09 15 原始内容存档于2010 09 07 NET Core is Open Source NET Framework Blog Microsoft 2014 11 12 原始内容存档于2014 12 31 Foley Mary Jo Microsoft to open source more of NET and bring it to Linux Mac OS X ZDNet 2014 11 12 原始内容存档于2014 11 12 Announcing Open Source of NET Core Framework NET Core Distribution for Linux OSX and Free Visual Studio Community Edition microsoft 2014 11 12 原始内容存档于2014 11 12 6 0 6 1 存档副本 2006 12 15 原始内容存档于2007 01 10 GotDotNet API Changes between versions of the NET Framework 存档副本 2006 12 15 原始内容存档于2005 11 19 詳細說明 What s New in the NET Framework 4 MSDN Library Microsoft 2013 09 09 原始内容存档于2013 10 21 Lazy lt T gt Class MSDN Library Microsoft 2013 09 09 原始内容存档于2013 10 21 BigInteger Structure MSDN Library Microsoft 2013 09 09 原始内容存档于2014 01 12 Complex Structure MSDN Library Microsoft 2013 09 09 原始内容存档于2012 12 12 Download Microsoft NET Framework 4 5 from Official Microsoft Download Center microsoft 2014 04 15 原始内容存档于2014 04 15 NET Framework 4 5 1 RTM gt start coding NET Framework Blog Microsoft 2013 10 17 2013 11 18 原始内容存档于2013 11 22 Microsoft NET Framework 4 5 1 Offline Installer Download Center Microsoft 2013 10 12 2013 11 18 原始内容存档于2013 11 28 NET Framework 4 5 1 RTM gt start coding MSDN Blogs Microsoft 2016 10 04 原始内容存档于2016 10 09 16 0 16 1 Announcing the NET Framework 4 5 2 MSDN Blogs Microsoft 2014 06 11 原始内容存档于2017 03 14 Microsoft NET Framework 4 5 2 Offline Installer Download Center Microsoft 2014 05 06 2017 05 06 原始内容存档于2017 05 04 NET Team Announcing NET 2015 Preview A New Era for NET 2015 02 27 原始内容存档于2015 02 28 19 0 19 1 Lander Rich Announcing NET Framework 4 6 NET Blog Microsoft 2015 07 20 2018 07 10 原始内容存档于2015 07 20 The team is updating the System Security Cryptography APIs to support the Windows CNG cryptography APIs since it supports modern cryptography algorithms Suite B Support which are important for certain categories of apps 20 0 20 1 20 2 NET Framework System Requirements MSDN Microsoft 2016 08 18 原始内容存档于2016 08 06 NET Framework 4 6 1 is now available MSDN Blogs Microsoft 2016 02 19 原始内容存档于2016 08 27 Announcing the NET Framework 4 6 2 Preview NET Blog Microsoft 2018 07 10 原始内容存档于2018 07 10 Announcing NET Framework 4 6 2 NET Blog Microsoft 2018 07 10 原始内容存档于2016 10 24 Lander Rich Announcing the NET Framework 4 7 NET Blog Microsoft 2017 04 05 2018 07 10 原始内容存档于2018 07 10 Microsoft NET Framework 4 7 Offline Installer Download Center Microsoft 2017 05 02 2018 07 10 原始内容存档于2018 07 10 The NET Framework 4 7 installation is blocked on Windows 7 Windows Server 2008 R2 and Windows Server 2012 because of a missing d3dcompiler update Support Microsoft 2017 05 03 2018 07 10 原始内容存档于2018 07 28 What s New in the NET Framework docs microsoft com Microsoft 2017 04 28 Krishna Preeti Announcing the NET Framework 4 7 1 NET Blog Microsoft 2017 10 17 2018 12 21 原始内容存档于2017 12 31 Announcing the NET Framework 4 7 1 microsoft com 2018 12 21 原始内容存档于2017 12 31 Immo Landwerth NET Standard NET Framework 4 7 1 2017 09 27 2018 04 25 原始内容存档于2018 09 19 Announcing the NET Framework 4 7 2 2018 06 12 原始内容存档于2018 06 12 美国英语 What s new in the NET Framework microsoft com 2018 07 10 原始内容存档于2017 11 29 微軟果然走向開放 NET 開放原始碼可望開發 Linux 與 OS X 軟體 页面存档备份 存于互联网档案馆 TechNews 科技新報 2014 11 13外部链接 编辑官方网站 Overview of NET Framework MSDN 页面存档备份 存于互联网档案馆 英文 NET Framework 概述 页面存档备份 存于互联网档案馆 简体中文 NET Framework 的概觀 页面存档备份 存于互联网档案馆 繁體中文 NET Github repository 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title NET框架 amp oldid 76703318, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。