1. 程式人生 > >微軟開放.NET框架原始碼和Mono

微軟開放.NET框架原始碼和Mono

微軟一直在朝著更加開放的方向努力。例如,公司執行長薩特亞納德拉(Satya Nadella)在Windows 10預覽釋出會上聲稱微軟喜歡Linux,這並不出人意料,但是對於一家將Linux視作威脅的公司來說,發表這樣的宣告還是需要很大的勇氣和魄力的。

2014年11月12日,ASP.NET之父、微軟雲端計算與企業級產品工程部執行副總裁Scott Guthrie,在Connect全球開發者線上會議上宣佈,微軟將開源全部.NET核心執行時,並將.NET 擴充套件為可在 Linux 和 Mac OS 平臺上執行。.NET核心執行時將基於MIT開源許可協議釋出,其中將包括執行.NET程式碼所需的一切專案——CLR、JIT編譯器、垃圾收集器(GC)和核心.NET基礎類庫。此外,微軟還發布了Visual Studio Community 2013,這是Visual Studio的一個新的免費版本。.NET使用MIT協議開源,讓它在Linux和OS X系統上也能夠執行。開發商們將能夠在全球三個最大的作業系統上使用.NET框架了。具體內容可以參看

http://www.hanselman.com/blog/AnnouncingNET2015NETAsOpenSourceNETOnMacAndLinuxAndVisualStudioCommunity.aspx,這裡上圖更直觀:

.net 2015

Visual Studio Community 2013將免費提供給使用者,同時還具備全部的可擴充套件性。那包括了5000多個Visual Studio的擴充套件件。最後,與Windows 10預覽版一樣,微軟還發布了Visual Studio 2015預覽版和.NET 2015預覽版。安裝Visual Studio社群版了。

.NET Core Framework團隊的高階程式經理Immo Landwerth,也在.NET框架的官方部落格上

宣佈.NET Core開源的訊息。.NET Core是一個模組化的開發棧,它是未來的所有.NET平臺的基礎。

Immo Landweth提到,之所以要開源.NET Core,有兩大原因:

  1. 作為跨平臺的.NET的基礎。
  2. 構建並受益於一個更為強大的生態系統。

比如.NET和Mono兩者是完全獨立的,很多程式碼是平臺無關的,所以很多工作都是重複勞動。合作構建一個單一的軟體棧是最理想的。

Mono 老大Miguel de Icaza 也在部落格中針對這個事件釋出博文:Microsoft Open Sources .NET and Mono, 09年公開原始碼使用的參考協議與 Open Source Initiatives 定義的“開放原始碼”系統是衝突的,所以 Mono 的人既不能看,也不能用。當然現在這些限制都沒有了。.NET基於MIT這一非常寬鬆的許可協議開源,此外微軟還提供了一份

專利承諾,都有助於.NET得到應用,同時避免開源、Unix和自由軟體社群曾出現過的持續數年的問題。他的團隊可以利用微軟的開源實現,來解決Mono程式碼庫不完整或者存在錯誤的地方。Mono團隊的下一步計劃是將.NET開原始碼整合進入Mono。這個週末mono專案會更新整個計劃,等著週末的好訊息。

微軟開源.NET一事在社群引發了強烈反響,Hack News上相關的討論已經有800多條。很多鍾愛C#語言的Unix/Linux使用者對此非常歡迎。也有人認為,到了這個時代,在存在替代選擇的情況下,開發者已經沒有理由為作業系統付費。他們可以選擇雲服務。微軟此舉只是吸引更多開發者使用其Azure服務。有趣的是,開發者社群總少不了語言優劣的爭論,不少人認為C#是最優秀的語言,很多人就語言的優劣展開了討論。