自1990年代末起,微軟一直在編寫其知名的軟體框架—.NET Framework。此框架不僅僅是個開發工具,更是微軟推動全新軟體架構與生態系統的核心。這一切都要從.NET Framework的起源開始說起。
.NET Framework(發音為「dot net」)是一個專有的軟體框架,主行於微軟Windows操作系統。它運用了一個名為通用語言基礎設施(CLI)的標準,並提供了一個大型的類別庫,稱為框架類別庫(FCL),涵蓋了語言互操作性,讓不同程式語言可以相互執行代碼。
在.NET Framework中,程式碼執行於名為通用語言執行時(CLR)的環境中,這是一種虛擬機,提供安全性、記憶體管理以及例外處理等服務。
.NET Framework的開發初衷是為了幫助程式設計師建立安全、標準化的應用程式,而不僅限於Windows平台。事實上,FCL和CLR是該框架的兩大支柱,前者提供企業級應用所需的豐富功能,而後者則是代碼執行的幕后英雄。
微軟最早在1990年代末的時候便開始了.NET Framework的開發,當時其名稱為下一代Windows服務(NGWS)。2000年初,首個beta版本的.NET 1.0便已經對外發布。隨着時間的推進,微軟及Intel於2000年8月共同努力標準化CLI和C#,並在2001年12月分別獲得ECMA的批准。這標誌著微軟對於開放標準的承諾。
微軟的努力不僅局限於開發專有技術,還在推進與社區的開發合作,體現出了一種更開放的交互模式。
.NET Framework的成功,並不僅僅因為其豐富的庫和穩定的性能,還有微軟隨後的一系列戰略轉型。例如,2014年的專利授權更新,讓Mono等社區專案的發展得以持續,這在一定程度上減少了自由與開源社群對於專利問題的疑慮。
.NET Framework的整體架構是其成功的核心之一,包括了以下幾個方面:
通用語言基礎設施(CLI)提供了跨語言的應用開發和執行平台,使不同語言之間的整合變得更加容易。
CLR的存在意味著所有為.NET Framework編寫的程式都將執行於該環境下,這對於記憶體的管理及安全性問題提供了有效的支持。此外,CLI組件的組合,使得應用程式的開發可以被標準化至一個框架內,提升了開發的靈活性及效能。
隨着時間的推移,微軟對於.NET Framework的改進形成了幾項基本設計原則,包括:
語言獨立性讓不同編程語言的互通成為可能,這使得開發者無需擔心不同語言之間的兼容性問題。
此外,透過集中現代開源合作的動態調整,.NET的開發模式不再限制於微軟自家的產品,任何符合規範的實作皆有潛力獲得支持。
隨著科技的演進和開源運動的提升,微軟於2019年發布的.NET Framework 4.8,也許是該框架作為專有產品的最後一次重大版本更新。而從此之後,僅提供每月的安全性與穩定性更新。現在,新一代的.NET Core已經出現並攫取了大部分開發者的關注。
隨着社會需求不斷變化,微軟是否會再次將.NET Framework推向開放平台的研究與實踐?
未來的.NET生態系統,將可能會形成一種更開放、更具動態的發展模式,值得我們持續關注。