.Net Core 真能令微软的.Net 跨平台“蔓延”?
2018-06-22 07:30:14来源:未知 阅读 ()
什么是.Net
.Net 本身就是基于公共语言基础架构(CLI)实现的平台独立的公共语言开发平台,只是自2006年成为规范以来的CLI,只有windows自己支持(mono除外),包括开发语言C#,VB.Net等,还有CLI的实现,.Net Framework 。其核心部分是基于Windows对CLI的虚拟执行系统(VES)的实现。 它应该相当于Java的虚拟机.
C#开发的.Net App为什么不能跨平台
公共语言基础架构(CLI)本身就是为跨平台设计的。但当初,微软应该是出于Windows的垄断考虑,根本就没打算基于其他的OS实现VES,所以C#的developer基本上都是Windows的developer了。C#的开发的应用系统基本上是基于Windows平台运行。
.Net Core 是什么,其如何实现跨平台
其实只要基于Linux实现CLI,主要是其VES,C#开发的app就可以在Linux上运行。 当然,由于过去的.Net Framework提供了很多特定于Windows上的UI框架 如WPF,Windows Forms,基于这些框架的APP只能是理论上可以在Linux上运行,但实际支持的代价会比较高,或许根本不现实。
所以, .Net Core诞生了。.Net Core就是对.Net Framework进行的裁剪 (把上述UI相关的framework去除),实现的一个类似于JRE一样的CLR,然后同时实现多个OS的VES,从而实现了跨平台。
微软为什么需要.Net Core
微软之所以愿意这么做,在某种程度上说,是被逼的,或者说是顺应历史潮流而为之。在当下,风起”云“涌的大环境下,得益于Azure,微软顺利从业已衰弱的Windows业务顺利转型到云服务提供商。而作为其所提供的云服务模式之一PaaS,必须能提供客户需要的OS,不仅仅是Windows。那么它当然希望Azure上的不同的操作系统运行的都是使用自己提供的开发技术开发的应用咯。
.Net Core 前景会风光无限吗
可是,通过虚拟执行环境实现开发的应用跨平台运行,JAVA从其诞生之日起就是这么做的。而时至今日,很多语言新秀争奇斗艳,被Oracle收购的JAVA都日渐容颜渐老了。。。 C#真能依靠才实现了跨平台的.Net Core焕发第二春?
参考
CLI Specification
http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-335.pdf
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- asp.net源程序编译为dll文件并调用的实现过程 2020-03-29
- Asp.net MVC SignalR来做实时Web聊天实例代码 2020-03-29
- ASP.NET MVC中jQuery与angularjs混合应用传参并绑定数据 2020-03-29
- Asp.Net中WebForm的生命周期 2020-03-29
- ASP.NET使用Ajax返回Json对象的方法 2020-03-23
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash