C#跨平台吗?
C#包括其他的
.net系语言,从技术实现上都是跨平台的,因为它们在编译之后都是符合.NET公共时标准的字节码,通过.NET虚拟机运行时翻译成最终的二进制运行。
微软之前将C#等局限在微软操作系统上,只是一种商业竞争的考虑,希望广大的开发者仍然围绕在微软的操作系统生态上开发。
.NET
.NET
这种情况知道最近几年改善了。因为微软终于出手了,这就是大名鼎鼎的
.NET
.NET
.NET
.NET
之后微软的工作重心就放到了.NET CORE上,ASP.NET
.NET
跨
Mono
一个第三方的.net framework实现 (现被官方收编)几乎实现了
.net
framework的所有功能,包括winfrm,wcf,aspnet webfrm 等等大名鼎鼎的unity3d就是使用mono实现了使用C#进行脚本编写
Xamarin
基于mono开发的,移动端跨平台框架,支持 Android,iOS,WP(W10M)
.NET
Core 我猜这个我不用说了。C#是.Net平台上的主要开发语言,除此之外还有VB.Net和F#等。此处说的C#跨平台暂且理解为.Net跨平台。
1,微软设计.Net之初,只支持Windows平台,跨多个版本的Windows系统平台,但是不能跨linux等。
2,.Net刚出来就公开了语言标准,因此有个团队基于该标准设计了Mono,除了Windows还支持Linux,并且一直维护更新,此时算得上是支持跨平台了。
3,2004年,牛逼游戏公司搞了个游戏引擎unity,现在只支持C#,非常热门
4,2011年,另一个团队基于Mono开发了Xamarin,支持苹果、Android、WP三个平台的移动开发,这个时候的.Net跨平台更有价值了。
5,2016年,微软正式推出.Net Core,天生跨平台,支持Windows、Linux、iOS等。
6,再后来,微软收购了Mono、Xamarin,免费开放。
至此,.Net Core跨平台一统天下!
石头哥已经给你回答了。😂😂😂
为了攒点粉丝,我也答一下。
目前.NET有.net framework、.net core、xamarin、mono等框架。未来将以.NET 5开始,统一框架。
支持Windows、linux、mac系统,基于linux开发的debain、ubuntu、centos等系统都支持。
除了英特尔CPU,amd的CPU、arm架构的cpu都支持。
除了我们平常电脑、服务器用的Windows系统、linux系统,还支持树莓派等各种linux嵌入式开发板。
c语言是非托管语言,要对各种平台分别生成。而.net可以只生成一次,即可把软件放到各种平台下运行。一次生成,各个平台均可运行,不限cpu、不限系统。
对于docker、k8s等技术。.net能十分优秀地契合,通过容器、集群技术,建立大型系统,开发分布式应用。
国外有十分丰富的大型应用经验,国内对.NET的敏感度不高,主要以java为首的编程进行开发。要参考.net的情况,应当到谷g查找资料。国内对.net的”热情”并不高。