.NET Framework、.NET Core、Mono、Xamarin之間關係

本是同根生

截止2017年7月,這些項目均爲微軟.NET Foundataion旗下開源項目,微軟朝着商業和開源兩種途徑,將.NET平臺開源、跨平臺化,以適應雲計算、移動互聯網時代的要求。2000年左右,隨着Java在PC互聯網時代的流行,微軟發佈了全新的.NET平臺,但是一直遲遲沒有開放和跨平臺,.NET生態一直侷限於Windows平臺,與Java相比,生態一直處於劣勢;隨着2008年,iPhone的發佈,移動互聯網的興起,微軟自身的移動平臺發展毫無起色,在移動開發領域基本上邊緣化了,此外,雲計算、虛擬化、容器等服務器端技術的興起,數據中心對於應用開發和部署都有了新的要求。微軟終於在2014年開始關注.NET的開源與開放,通過收購第三方公司Xamarin的解決方案,也爲跨平臺移動開發提供了可能。
.NET Framework:微軟2002年2月發佈第一個版本,是借鑑Java研發的全新開發平臺。該平臺提供了完整的Windows軟件開發組件,包括編程語言C#、強大的類庫.NET Framework、虛擬機CLR,支持Windows窗體應用、移動應用、Web應用等主流應用模式開發。

.NET Framework只支持在Windows平臺上開發和運行,微軟商業實現。
.NET Core:微軟2014年宣佈.NET核心庫開源,2016年6月發佈其實現.NET Core 1.0。Core簡單理解就是.NET Framework的開源跨平臺實現,主要包括跨平臺虛擬機CoreCLR、.NET Framework APIs的實現子集以及新增類庫等。開發語言支持C#、F#以及未來的VB,其提供的API類庫可以看做.NET Framework的跨平臺版本和功能子集、不支持WPF等Windows專有的應用模型。

.NEF Core支持Windows、Linux、macOS上開發ASP.NET、控制檯應用,主要用於雲計算下的服務器端跨平臺開發。開源開放
Mono:第三方公司Ximian於2004年6月發佈的.NET Framework跨平臺實現方案,支持在Linux、Windows、Unix、Android、遊戲主機上應用模型。主要依據是微軟在2000年12月發佈開放標準公共語言基礎架構CLI-ECMA-335,實現編譯器和虛擬機。

Mono是第三方公司實現的開源跨平臺.NET解決方案,支持C#在Linux、Unix等平臺上開發應用。開源開放
Xamarin:Mono項目成員2011年5月發佈的跨平臺移動開發方案,使用C#開發本地的Android,iOS,Windows apps應用,其中代碼可以跨平臺共享,目前該平臺已被微軟2016年收購,專注於跨平臺移動開發領域。

Xamarin專注於提供移動平臺的.NET開發解決方案,基於Mono實現,提供Andorid、iOS等主流移動平臺開發工具和類庫。開源開放
--------------------- 
作者:壹零Boy 
來源:CSDN 
原文:https://blog.csdn.net/MePlusPlus/article/details/76242330 
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章