溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C# .NET及Mono怎么實現(xiàn)跨平臺

發(fā)布時間:2020-07-23 11:15:43 來源:億速云 閱讀:343 作者:小豬 欄目:編程語言

這篇文章主要講解了C# .NET及Mono怎么實現(xiàn)跨平臺,內(nèi)容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。

一、.NET是什么

.NET是微軟搭建的開發(fā)者平臺,主要包括:

1.支持(面向)該平臺的編程語言(如C#、Visual Basic、C++/CLI、F#、IronPython、IronRuby...),

2.用于該平臺下開發(fā)人員的技術(shù)框架體系(.NET Framework、.NET Core、Mono、UWP等),

  • 1.定義了通用類型系統(tǒng),龐大的CTS體系
  • 2.用于支撐.NET下的語言運行時的環(huán)境:CLR
  • 3..NET體系技術(shù)的框架庫FCL
  • 3.用于支持開發(fā)人員開發(fā)的軟件工具(即SDK,如VS2017、VS Code等)

二、Mono是什么

微軟的.NET框架本身只能在windows上運行,對于跨平臺的需求,Mono就產(chǎn)生了。

  • Mono是.NET的一個開源跨平臺工具,可以實現(xiàn)跨平臺運行。
  • Mono作為.NET框架在不同平臺上的重要補充,Mono也被Unity所引用。

三、Unity是如何實現(xiàn)跨平臺的

因為Unity使用了叫CIL(通用中間語言)的代碼指令集。CIL可以在任何支持CLI(通用語言基礎(chǔ)結(jié)構(gòu))的環(huán)境中運行。

Unity代碼的編譯分為兩部分:

  • 從代碼到CIL的編譯
  • 運行時從CIL到本地指令的即時編譯(不包括IOS,因為IOS無法使用JIT引擎)
     

Unity打包時會將mono一同打包進來,同時Unity將腳本編譯為CIL代碼打包,這樣只要是Mono支持的平臺,都可以在Mono中編譯成平臺本地代碼。

看完上述內(nèi)容,是不是對C# .NET及Mono怎么實現(xiàn)跨平臺有進一步的了解,如果還想學習更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI