C#和.NET框架和術語

接觸C#的時候,肯定會先接觸到一堆專業術語C#、.NET、CLI、CIL、CTS、CLS、CLR、JIT、BCL、FCL、Module、Assembly 等等

C#應用的內部編譯、執行過程如下:






我們把C#和.NET這些術語解釋下


各種語言C#、VB等基於.NET環境的語言,在經過各種編譯器編譯後,生成CIL(common intermediate language公共中間語言),CIL是和平臺無關的,CIL在被調用運行時經過JIT(just in time實時編譯器編譯),編譯成和平臺相關的本地代碼。


1.C#  編程語言、高級語言


2..NET是比MFC和COM更優秀的面向對象的環境.主要優秀在跨平臺


3.託管代碼:爲.NET框架編寫的代碼,需要CLR

   非託管代碼:不在CLR控制之下運行的代碼,如win32 c/c++ dll


4.CIL:是和平臺無關的公共中間語言,這樣能做到跨平臺性,在運行的時候經過JIT實時編譯器編譯後,編譯成和平臺相關的本地代碼。微軟提供了Ngen工具把程序集轉換成本機代碼,免除了運行時JIT實時編譯。


5.CLR:公共語言運行庫。Common Language Runtime。是.NET核心組件,是操作系統的頂層,負責管理程序的執行。主要包括:

          GC 垃圾回收器

          JIT 實時編譯器

          BCL 基類庫


6.CLI :(Common Language Infrastructure公共語言基礎結構),是一組標準,把.NET框架的組件組合成一個系統。包含:

CLR:公共語言運行庫

CLS:公共語言規範

BCL:基類庫

元數據+定義

CTS:公共類型系統

CIL:公共中間語言


參考鏈接:http://www.tracefact.net/CLR-and-Framework/DotNet-Framework.aspx

參考書籍:C#圖解教程

發佈了106 篇原創文章 · 獲贊 24 · 訪問量 132萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章