zhhansNET 框架zhhantNET Framework 是由微軟開發，一個致力於敏捷軟體開發（agile software development）、快速應用開發（rapid application development）、平臺獨立性和網路透明化的軟體框架。NET 是微軟為 2000 年代對伺服器和桌上型軟體工程邁出的第一步。NET 包含許多有助於網際網路和內部網應用迅捷發的技術。 NET 框架是微軟公司繼 Windows DNA 之後的新發平臺，採用系統虛擬機器執行，以通用語言執行庫（Common Language Runtime）為基礎，支援多種語言（C、F、VBNET、C、Python 等）的開發。 NET 也為應用程式介面（API）提供了新功能和發工具。這些革新使得程式設計員可以同時進行 Windows 應用軟體和網路應用軟體以及元件和服務（web 服務）的開發。NET 提供了一個新的反射性的且物件導向程式設計程式設計介面。NET 設計得足夠通用化從而使許多不同高階語言都得以被彙集。 甲骨文公司的 Java 程式語言和 Java 平臺企業版技術是NET 平臺的競爭對手之一。 2014 年 11 月 12 日，微軟宣佈完全開放NET Framework 的原始碼，並提供給 Linux 和 macOS 使用。 微軟於 2019 年 4 月釋出了該框架作為專有軟體的最後一個主要版本 NET Framework 48，隨後於 2022 年 8 月釋出了 481。從此之後便只有安全性或是穩定性的臭蟲修復更新，亦無後續版本改動的計畫。NET Framework 48 將會持續包含在 Windows 的更新中接收安全性更新，截至 2023 年 11 月為止，並無將其移除的計畫。官方推薦後續的新開發改用 Net 6 起的版本進行開發。 版本 NET 框架版本歷史一覽 版本 版本 通用語言執行庫 釋出時間 隨同 Visual Studio 分發 預安裝於 Windows 預安裝於 Windows 包含之前版本 版本 版本 通用語言執行庫 釋出時間 隨同 Visual Studio 分發 客戶端版 伺服器版 包含之前版本 10 10 10 2002 年 2 月 13 日 NET 不適用 11 11 11 2003 年 4 月 24 日 NET 2003 2003 不適用 20 20 20 2005 年 11 月 7 日 2005 2003 R2 不適用 30 30 20 2006 年 11 月 6 日 Vista 20 35 35 20 2007 年 11 月 19 日 2008 30 SP1 20 SP1 35 351 20 2008 年 2 月 4 日 2008 30 SP1 20 SP1 35 35 SP1 20 2008 年 8 月 11 日 2008 SP1 30 SP2 20 SP2 35 351 SP1 20 2009 年 7 月 22 日 7 2008 R2 30 SP2 20 SP2 4 40 40 2010 年 4 月 12 日 2010 不適用（置位更新） 4 45 40 2012 年 8 月 15 日 2012 8 2012 不適用（置位更新） 4 451 40 2013 年 10 月 17 日 2013 81 2012 R2 不適用（置位更新） 4 452 40 2014 年 5 月 5 日 不適用（置位更新） 4 46 40 2015 年 7 月 20 日 2015 10 不適用（置位更新） 4 461 40 2015 年 11 月 30 日 2015 Update 1 10 v1511 不適用（置位更新） 4 462 40 2016 年 8 月 2 日 10 v1607 2016 不適用（置位更新） 4 47 40 2017 年 4 月 5 日 2017 v153 10 v1703 不適用（置位更新） 4 471 40 2017 年 10 月 17 日 2017 v155 10 v1709 v1709 不適用（置位更新） 4 472 40 2018 年 4 月 30 日 2019 10 v1803 v1803 不適用（置位更新） 4 48 40 2019 年 4 月 18 日 10 v1909 v1909 不適用（置位更新） 4 481 40 2022 年 8 月 9 日 不適用（置位更新） 平臺支援資訊一覽 版本 指令集架構 Windows 版本 Windows 版本 版本 指令集架構 個人電腦 Windows Server 10 IA32 98 ME NT 40 SP6a 2000 XP NT 40 SP6a 2000 11 IA32 NT 40 SP6a 2000 XPVista NT 40 SP6a 2000 2003 2008 20 35 IA32 Itanium x8664 XP Vista 7 8 81 10 2003 2003 R2 2008 2008 R2 2012 2012 R2 2016 2019 40 IA32 Itaniumx8664 XP SP3 Vista SP1 7 8 81 10 2003 SP2 2003 R2 SP2 2008 2008 R2 2012 2012 R2 2016 2019 45 46 IA32 x8664 Vista SP2 7 SP1 8 81 10 2008 SP2 2008 R2 SP1 2012 2012 R2 2016 2019 461 IA32 x8664 7 SP1 8 81 10 2008 R2 SP1 2012 2012 R2 2016 2019 462 48 IA32 x8664 7 SP1 81 10 v1607 起 2008 R2 SP1 2012 2012 R2 2016 2019 481 IA32 x8664 ARM64 10 v20H2v21H2 11 v21H2 2022 0 自 SP1 起所有 Windows XP 分發光碟或映象中均包含 10 版的安裝包，並且這個版本作為 Windows XP Tablet PC 和 Media Center 版的必要組成元素。 1 Net Framework 11 可以部署於 Itanium 和 x8664 平臺， 由 WOW64 支援。 2 在 Itanium 平臺上有些功能不被支援，比如 WPF。 3 從版本 45 起，隨同 Windows RT Windows RT 81 運用於 ARM v7 平臺，由於是精簡版，未列於此表。 發行歷史 NET Framework 10 完整版號 103705 這是最早的NET 架構，於 2002 年發行。它可以以一個獨立且可重新分發的包的形式或在一個軟體發展工具包集中被獲得。它也是第一個微軟 Visual Studio NET 的發行版的一部分（也被稱作 Visual Studio NET 2002）。 NET Framework 11 完整版號 114322 這是首個主要的NET 框架升級版本，發行於 2003 年。它可以以一個獨立的可重新分發的包的形式或在一個軟體發展工具包集中被獲得。它也是第二個微軟 Visual Studio NET 版本的一部分（也被稱作 Visual Studio NET 2003）。它也是首個被 Windows 作業系統 Windows Server 2003 所內建的NET 框架版本。 自 10 版本以來的改進： 內建了對 mobile ASPNET 控制項的支援。這在 10 版本是以附加功能方式實現的，現在已經整合到框架的內部。 安全方面的變更 使得 Windows 表單程式碼以可靠的行為執行，從而可以在 Internet 環境內安全執行，並且加入了 ASPNET 應用程式的程式碼安全訪問功能。 內建了對 ODBC 和 Oracle 資料庫的支援。這在 10 版本是以附加功能方式實現的，現在已經整合到框架的內部。 NET Compact Framework 這是一個用於智慧裝置（例如 Pocket PC 或者 SmartPhone）的NET 框架的子集。 對 IPv6 的支援。 大量的 API 變更。 NET Framework 20 完整版號 205072742，發行於 2005 年 10 月 27 日。 NET Framework 20 的元件都包含在 Visual Studio 2005 和 SQL Server 2005 裡面。透過 MSDN Universe 版可以免費下載 RTM 版本。 自 11 版本以來的改進： 大量的 API 變更。 新的 API 讓需要管理NET 執行庫例項的非NET 的應用程式可以做到這點。這個新的 API 對NET 執行庫的各種功能，包括：多執行緒、記憶體分配、程式碼載入等，提供了很好的控制。它最初是為 Microsoft SQL Server 能夠有效率的使用NET 執行庫而設計的，因為 Microsoft SQL Server 擁有它自己的日程管理器和記憶體管理器。 NET Framework 30 釋出日期 20061121。曾用名「WinFX」。依然使用NET Framework 20 版本的公共語言執行庫（CLR），並加入了適應未來軟體發展方向的 4 個框架： Windows Presentation Foundation（WPF）：提供更佳的使用者體驗，用來開發 Windows Forms 程式以及瀏覽器應用程式（參見 WPFE） Windows Communication Foundation（WCF）：提供 SOA（面向服務的軟體構架）支援的安全的網路服務（Web Service）框架。 Windows Workflow Foundation（WF）：提供一個設計與發展工作流程導向（Workfloworiented）應用程式基礎支援的應用程式介面。 Windows CardSpace：提供一個 SSO 的解決方案，每個使用者都有各自的 CardSpace。 NET Framework 35 這個版本將包含一個支援 C 和 VBNet 中心的語言特性的編譯器，以及對語言整合查詢（LINQ LanguageIntegrated Query）的支援。該版本隨 Visual Studio 2008 一起釋出。 同時，NET Framework 35 自動包含NET Framework 20 SP1 以及NET Framework 30 SP1，用於為這兩個版本提供安全性修復，以及少量新增的類庫（如 SystemDateTimeOffest），此版本提供的新功能有： 擴充套件方法（Extension Method）屬性（Attribute），用於為擴充套件方法提供支援 LINQ 支援，包括 LINQ to Object、LINQ to ADONET 以及 LINQ to XML 表示式目錄樹（Expression Tree），用於為 Lambda 表示式提供支援 與語言整合查詢（LINQ）和資料感知緊密整合。藉助這個新功能，您可以使用相同的語法，在任何支援 LINQ 的語言中編寫相關程式碼，以篩選和列舉多種型別的 SQL 資料、集合、XML 和資料集，以及建立它們的投影。 利用 ASPNET AJAX 可以建立更有效、更具互動性、高度個性化的 Web 體驗，這些體驗在所有最流行的瀏覽器上都能實現。 用於生成 WCF 服務的全新 Web 協議支援，包括 AJAX、JSON、REST、POX、RSS、ATOM 和若干新的 WS 標準。 Visual Studio 2008 中面向 WF、WCF 和 WPF 的完整工具支援，其中包括支援工作流的服務這一新技術。 NET Framework 35 基類庫（BCL）中的新類可滿足許多常見的客戶請求。 NET Framework 35 SP1 NET Framework 35 SP1 自動包含NET Framework 20 SP2 以及NET Framework 30 SP2。該版本隨 Visual Studio 2008 SP1 釋出，此版本提供了下列的新功能： 新增的 ASPNET 功能包括 ASPNET 動態資料和 ASPNET AJAX 附加功能，前者提供了無需編寫程式碼就可實現資料驅動的快速開發的豐富支架框架，後者為管理瀏覽器歷史記錄提供了支援（後退按鈕支援）。 ADONET 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 資料提供程式（SystemDataSqlClient）完全支援 SQL Server 2008 資料庫引擎的所有新功能。有關NET Framework 對 SQL Server 2008 的支援的更多資訊，請參見 SQL Server 中的新功能（ADONET）。ADONET 資料平臺是一種多版本策略，它使開發人員能夠針對概念性實體資料模型進行程式設計，從而減輕他們的編碼和維護工作。此平臺提供了 ADONET Entity Framework、實體資料模型（EDM）、物件服務、LINQ to Entities、Entity SQL、EntityClient、ADONET 資料服務及實體資料模型工具。 Windows Communication Foundation 現在提供了改進的互操作性支援，增強了部分信任方案中的除錯體驗，並擴充套件了整合協議支援以更廣泛地應用於 Web 20 應用程式，從而使 DataContract 序列化程式更易於使用。 MicrosoftVisualBasicPowerPacks 名稱空間引入了新的 DataRepeater 控制元件，該控制元件以可自定義的列表格式顯示資料。此名稱空間還包含新的向量形狀。 NET Framework 40 NET Framework 40 主要增加了並行支援，英文版於 2010 年 4 月 12 日推出。 新增 SystemLazy T，做為延遲初始化時使用。 新增大整數的 SystemNumericsBigInteger 與複數的 SystemNumericsComplex（使用時需加入參考 SystemNumericsdll） 微軟於 2016 年 1 月 12 開始停止對NET 40 45 451 的安全性更新及技術支援 NET Framework 45 NET Framework 45 是NET Framework 4 高相容性的置位更新（inplace update）。搭配 C 或 Visual Basic 程式設計語言使用NET Framework 45，即可編寫 Windows Store 風格的應用程式。NET Framework 45 可提升效能、可靠度及安全性。於 2012 年 8 月 15 日推出。但請注意，NET Framework 45 只支援 Windows Vista SP2 以上版本的作業系統。 微軟於 2016 年 1 月 12 開始停止對NET 40 45 451 的安全性更新及技術支援 NET Framework 451 NET Framework 451 於 2013 年 10 月 17 日隨著 Visual Studio 2013 發布。此版本需要 Windows Vista SP2 或更新的環境，並且包含在 Windows 81 和 Windows Server 2012 R2 中。NET Framework 451 的新功能有： 偵錯器支援 X64 編輯和繼續（EnC） 偵錯器支援檢視託管返回值 Call Stack 和 Task 視窗中的非同步感知偵錯 偵錯器支援分析NET 記憶體轉儲（在 Visual Studio Ultimate SKU 中） 適用於 Performance 及 Diagnostics 中心的NET 開發者工具 程式碼分析 UI 改進 ADONET 空閒連線彈性 NET Framework 452 NET Framework 452 的發表宣佈於 2014 年 5 月 5 日。此版本需要 Windows Vista SP2 及更新版本。對於 Windows Forms 應用程式，對高 DPI 方案進行了改進。對於 ASPNET，可以使用更高可靠性的 HTTP 開頭檢查和修改方法，這是一種規劃背景非同步工作任務的新方法。 NET Framework 46 NET Framework 46 是在 2014 年 11 月 12 月宣佈，而在 2015 年 7 月 20 日發行。 它對 64 位元系統支援一個新的即時編譯（JIT），稱之為 RyuJIT，呈現較佳的效能，並支援 SSE2 與 AVX2 指令集。WPF 與 Windows Forms 都獲得更新以達成較高的 DPI 情境。支援 TLS 11 與 TLS 12 的功能已經被加入 WCF。 此版本需要 Windows Vista SP2 或更新的版本。 NET Framework 461 NET Framework 461 發行的訊息在 2015 年 11 月 30 日宣佈。這個版本需要 Windows 7 SP1 或更新的版本。新的功能與 API 包括： WPF 改進了拼寫檢查，支援使用者自定義詞典，並改進觸控效能。 增強支援橢圓曲線數字簽名演算法（ECDSA）X509 認證。 當連線 Azure SQL 資料庫時，添加了對 AlwaysOn、Always Encrypted 的 SQL 連線，並改進連線開放彈性。 Azure SQL 資料庫現在使用更新的 SystemTransactions API 支援分散式處理。 RyuJIT、GC、WPF 和 WCF 中的許多其他效能、穩定性和可靠性相關修復。 NET Framework 462 NET Framework 462 的預覽在 2016 年 3 月 30 日宣佈，發行日期則為 2016 年 8 月 2 日。此版本需要 Windows 7 SP1 或更新版。 New features include 支援超過 260 個字元的路徑 支援 X509 認證的 FIPS 1863 DSA TLS 11 12 支援 ClickOnce 支援 ASPNET 資料註釋的本地化 啟用具備 Project Centennial 的 NET 桌面應用程式 針對 WPF 支援軟鍵盤和每個監視器 DPI NET Framework 47 2017 年 4 月 5 日，微軟宣佈 NET Framework 47 將被整合到 Windows 10 創作者更新，承諾為其他 Windows 版本提供獨立安裝程式。同日，發行一個 Visual Studio 2017 更新版以加強支援標的物 NET Framework 47。 所承諾的 Windows 7 及更新版本獨立安裝程式在 2017 年 5 月 2 日發行， 但有一些重要成份不包含在內。 NET Framework 47 的新功能包括： 使用橢圓曲線密碼學的增強加密 改進對傳輸層安全性協定（TLS）的支援，尤其是對於 12 版 支援 Windows Forms 的高 DPI 感知支援 在 WPF 中對觸控和手寫的更多支援 WPF 的新印表 API NET Framework 471 NET Framework 471 在 2017 年 10 月 17 日發行。在修復程式和新功能中，它修正了 d3dcompiler 依賴性問題。 它還增加了與NET Standard 20 開箱即用的相容性。 NET Framework 472 NET Framework 472 在 2018 年 4 月 30 日發行。主要的異動是改進 ASPNET、BCL、CLR、ClickOnce、Networking、SQL、WCF、Windows Forms、Workflow 及 WPF。 CLR 與 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 月跟隨（ISOIEC 23271 和 ISOIEC 23270）。 這會有一定的風險，但它可以鼓勵標準聯合的實現，以提供一座橋樑來把非 Windows 的軟體轉變為微軟NET。將此推廣為標準的一個團體是國際NET 聯合會（INETA）。 儘管微軟及其他合作夥伴持有 CLI 及 C 的專利，ECMA 和 ISO 要求所有專利都應該遵守 合理與非歧視準則。除此之外，這些公司亦同意讓使用者免費使用這兩項專利。 不過，這並不包括NET Framework 內並不為 ECMAISO 標準涵蓋的範圍，這包括了：Windows Forms、ADONET 及 ASPNET。微軟對上述部件所持有的專利，使開發者未必能夠為非微軟平臺開發出一套完整的作品。 2014 年 11 月 13 日，微軟新任執行長薩帝亞納德拉決心下，該公司釋出的原始碼包含了伺服器部分的核心，如、和，正式對外開放原始碼。微軟果然走向開放，NET 開放原始碼可望開發 Linux 與 OS X 軟體 ，TechNews 科技新報，20141113 NET 與 Java EE 公共語言基礎（CLI），通用中間語言（CIL）以及 C 與甲骨文公司的 Java 虛擬機器和 Java 之間有不少的相似之處，因此它們無疑是強烈的競爭者。它們兩者都使用它們各自的中間碼（在微軟，它們叫做通用中間語言，而在 Oracle，它們叫位元組碼）。通用中間語言被設計來即時編譯（JIT），而 Java 的位元組碼在最初的時候則是設計成用於解釋執行，而非即時編譯。NET 現在只在 Windows 上被完美地支援，而 Java 則可在很多平臺上被完好支援。然而，現在一些正在開發中的實現版本例如 Mono 或者可以用於在類 Unix 作業系統例如 Linux，FreeBSD 和 Mac OS X 上執行NET 應用程式。甲骨文公司的一個產品，J2EE 提供與微軟的一些捆綁於 Windows 中的技術例如 COM（先前的 MTS）和 MSMQ 等效的功能。 Java 和NET 可經由，一個在NET 平臺上實作的 Java 虛擬機器作更多的溝通。 Java 有其專門的遠端程式呼叫技術 RMI（Remote Method Invocation） RMI 的另一版本更可相容 CORBA。 然而，NET 與 Java 之間的競爭關係，在NET Core 出現後，一切都改觀了。 NET 與 COM 前一版軟體元件技術由 Microsoft 所提出的 COM，該技術被用來建立大型（largescale）的軟體系統上，使用 COM 或 MTS 對於傳統分散式元件有強化的作用。當NET 將 COMobjects 封裝成NET 元件以及將NET 元件封裝成 COMobjects 後，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 版本。 CCLI，一個 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。 PowerBuilderNET powerbuilder 115 及以後的版本都採用net 技術，但這種語言目前停止開發了。 ASPNET ADONET ASPNET 是內含於NET Framework 中，專門用來發展 Web 應用程式的一組類別庫集。 ADONET 是內含於NET Framework 中，專門處理與資料來源溝通的資料存取類別庫集，被 Windows Forms 與 ASPNET 應用程式大量使用，可說是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 X102。 Mono 是一個開源的NET 執行時和開發庫實現版本。Mono 現正由 xamarin 公司和開源軟體發展社群負責開發。它正迅速發展成熟，現已經包含了對 ASPNET 和 ADONET 的支援，對 Windows Forms 庫的支援也較充分。它提供了一個 C 編譯器，而一個 VBNET 編譯器現在也已經處於 prebeta 階段。Mono 專案還包含了一些新的庫和技術的開發： Gtk：一個 GTKGUI 工具包的NET 封裝。 xSP：一個用 C 編寫的支援執行 ASPNET 應用程式的網頁伺服器軟體。 MonoDevelop：SharpDevelop 的一個移植版本，是一個符合 GPL 標準的面向 Gtk 和 Mono 的NET 整合開發環境。 NovellDirectoryLdap 類庫：Lightweight Directory Access Protocol（LDAP）for NET 的一個免費的實現版本。 SerialPortNet：Aserial portlibrary for Net Mono implementing NET 20 specifications Mono for Android 和 MonoTouch for iOS：Mono 在移動平臺 Android 和 iOS 上的移植，使開發者可以在 Android 和 iOS 平臺上使用 C 和 Mono 框架開發應用。Xamarin Forms 是這些實現的核心，可以根據系統不同生成符合該系統風格的介面。 MonoMac：Mono 對於一些 OS X 原生 Step API 的封裝。 PortableNET 不及 Mono 成熟，這得歸因於 PortableNET 並不是在最初的時候就使用了微軟的開發框架。提供了一個可以從 C 編譯到通用中間語言的編譯器。 參見 C VBNET ASPNET AJAX COM Interop Windows API NET Compact Framework NET Micro Framework 參考文獻 外部連結 Overview of NET Framework MSDN NET Framework 概述 NET Framework 的概觀 NET Github repository Category 微軟開發工具 Category 微軟 API