成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

討論:到底C#是編譯語言還是解釋語言

開發 后端
這里我們將要討論一下到底C#是編譯語言還是解釋語言,希望通過此次討論能幫助大家更好的理解C#。

我們這里需要討論的是C#是編譯語言還是解釋語言?將從定義來進行討論,并結合流程圖來說明。希望***的結論,能對大家有所幫助。

“C# Java是解釋型語言?Oh my god”

“引用vls:C# Java是解釋型語言?Oh my god

呵呵 我也很詫異“

“引用DiggingDeeply:@vlsC#不是解釋行語言,那JIT是干啥用的?

無知并不可憐,無知還不知道自己無知才叫可憐”

“。。。但如果因為它是"一邊變換一邊執行", 就將其當作解釋語言……只能說你看到表象卻沒抓住本質。”

很是無語,既然您認為別人無知那您的有知拿出來給無知的人看看,行不?

拋開這些不談,誰能給編譯型和解釋型給下個定義。無一例外,要么就是某人的博客,要么就是搜索來的網頁,再要么就是放個闕詞就消失,這些作為論據充分不?

昨天翻了翻龍書,也沒有給這兩個概念下詳細的定義,可見兩個概念是很難下個精確的定義的。

在<>(by Michaei L. Scott)這本書里面,我找到了相關的定義和說明,特摘錄如下

Compilation and Interpretation

高級語言里一個程序的編譯和執行大概是 下面的情況:

一個程序的編譯和執行

編譯器將高級語言從源代碼翻譯成與之等價的目標程序(就相當于從中文翻譯成中文),而后就隱退了。在隨后的某個時刻,用戶啟動目標程序由操作系統執行。實現高級語言的另外一種方式為解釋:

實現高級語言

與編譯不同的是,解釋器在目標程序(其實根本就沒有目標程序,只是與編譯來對比)執行期間,解釋器一直隨之運行。這種執行過程完全由解釋器控制的。從效果上看,解釋器實現了一臺“虛擬計算機”,其“機器語言”就是高級語言,解釋器一次讀入一條或多條語句,按照其自身規定的方式去執行相應的操作。一般說來,解釋比編譯有著很好的靈活性;編譯一般有著較好的性能。但是有些語言確是采用了兩者的混合形式:

混合形式

書中的原文:”如果初始階段的翻譯器比較簡單,我們就說這個語言是“解釋的”。如果翻譯器很復雜,我們就說這一語言是“編譯的”。現在兩者的區分變得有些模糊了,因為“簡單”和“復雜”都是修飾性術語,也因為完全可能出現用一個編譯器(復雜的翻譯過程)生成代碼,而后又由一個復雜的虛擬機(解釋器)執行。對于***這種情況,如果翻譯器對程序做了徹底的分析(而不是做某種“機械的”變換),而且有關的中間語言程序與源程序并沒有很強的相似性,我們還是說這個語言是編譯的。這兩種特性----徹底的分析和非平凡的變換-----是刻畫編譯方式的標志性特征。“

根據以上標準,首先CSC只是對C#到IL做”機械“的翻譯,而且C#和IL之間有很強的相似性,因為兩者的程序代碼幾乎可以100%相互轉換(比如reflector可以將C#反編成IL,也可以將IL反編為C#)。您認為呢?

PS:再者某些人認為的ngen和cache程序集其實也是支持C#是解釋語言的結論,因為編譯型語言因為性能的天然因素是不需要這些手段的。也許我是錯的,請您不吝賜教,感激涕零.本人禁止了不負責任的匿名評論,請大家海涵。

原文標題:C# 編譯或者解釋?

鏈接:http://www.cnblogs.com/diggingdeeply/archive/2009/09/27/Is-csharp-a-Compilation-language-or-Interpretation-language.html

【編輯推薦】

  1. C#參差數組初始化概述
  2. C#數組初始化全面分析
  3. C#一維數組和多維數組淺談
  4. C#參差數組初始化概述
  5. C#動態數組實例介紹
責任編輯:彭凡 來源: 博客園
相關推薦

2010-01-13 14:17:53

C++編譯語言

2020-08-31 19:17:24

Python強類型語言弱類型語言

2009-12-22 02:48:23

COBOL語言Grace Hoppe編譯語言

2023-11-08 13:17:00

Python解釋型語言

2009-09-02 17:10:45

C#語言入門

2011-07-05 16:57:53

C語言

2009-08-03 16:28:53

Java語言與C#語言

2009-08-13 17:04:09

C#語言C#程序

2015-04-21 09:20:40

SwfitObject—C

2009-11-02 17:38:56

VB.NET與C#

2009-09-11 10:44:55

C#語言

2009-08-19 16:50:32

Visual C#C#語言特性

2009-08-14 10:59:35

C#分部方法

2009-08-12 16:22:29

C#插件技術

2009-06-15 11:03:10

Java語言C#語言

2009-08-26 17:22:09

C#語言

2009-08-06 14:08:08

C#語言異常處理

2009-08-21 08:59:35

C#語言規范

2009-08-25 16:32:24

C#語言

2009-07-31 17:28:35

C#語言調用DLL
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久久久免费 | 91麻豆精品国产91久久久久久久久 | 色婷婷综合久久久中文字幕 | 日日碰狠狠躁久久躁96avv | 国产欧美一区二区三区日本久久久 | 国产精品久久久久久久粉嫩 | 色综合色综合 | 玖玖国产| 一级特黄网站 | 欧美成人精品激情在线观看 | 亚洲欧美成人 | 亚洲成人av在线播放 | 九九热免费在线观看 | 天堂久久一区 | 91久久国产 | 91亚洲一区 | 91社区在线观看播放 | 欧洲亚洲一区二区三区 | 久久亚洲国产精品 | 日韩成人免费视频 | 成人精品一区二区三区 | 国产亚洲一区二区三区在线 | 青青草一区二区 | 亚洲日日| 久久网亚洲 | 欧美乱大交xxxxx另类电影 | 国产精品精品3d动漫 | 91欧美 | 国产日产精品一区二区三区四区 | 午夜电影福利 | 欧美精品中文字幕久久二区 | 国产精品大片 | 日韩av第一页 | 羞羞视频免费观看入口 | 国产91视频播放 | 日韩中文字幕在线观看 | 亚洲欧美在线一区 | 亚洲精品电影网在线观看 | 欧美成人一区二区三区 | 精品国产91乱码一区二区三区 | 特级黄一级播放 |