.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等主流移动平台开发工具和类库。开源开放

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值