C# .NET及Mono跨平台实现原理解析
一、.NET是什么
.NET是微软搭建的开发者平台,主要包括:
1.支持(面向)该平台的编程语言(如C#、VisualBasic、C++/CLI、F#、IronPython、IronRuby...),
2.用于该平台下开发人员的技术框架体系(.NETFramework、.NETCore、Mono、UWP等),
- 1.定义了通用类型系统,庞大的CTS体系
- 2.用于支撑.NET下的语言运行时的环境:CLR
- 3..NET体系技术的框架库FCL
- 3.用于支持开发人员开发的软件工具(即SDK,如VS2017、VSCode等)
二、Mono是什么
微软的.NET框架本身只能在windows上运行,对于跨平台的需求,Mono就产生了。
- Mono是.NET的一个开源跨平台工具,可以实现跨平台运行。
- Mono作为.NET框架在不同平台上的重要补充,Mono也被Unity所引用。
三、Unity是如何实现跨平台的
因为Unity使用了叫CIL(通用中间语言)的代码指令集。CIL可以在任何支持CLI(通用语言基础结构)的环境中运行。
Unity代码的编译分为两部分:
- 从代码到CIL的编译
- 运行时从CIL到本地指令的即时编译(不包括IOS,因为IOS无法使用JIT引擎)
Unity打包时会将mono一同打包进来,同时Unity将脚本编译为CIL代码打包,这样只要是Mono支持的平台,都可以在Mono中编译成平台本地代码。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
1 泰迪狗狗如何训练
3 狗狗训练图
5 狗狗训练方法
6 训练狗狗不咬人
8 敏捷训练狗狗
10 训练狗狗吃饭
11 泰迪狗狗训练
12 狗狗从多大开始训练
13 狗狗训练学校费用
14 怎么去训练狗狗
15 狗狗训练狗狗
16 狗狗训练教程
17 训练狗狗装死
18 泰迪狗狗的训练方法