主流編程語言優(yōu)劣比較

主流編程語言優(yōu)劣比較

ID:9239445

大?。?0.58 KB

頁數(shù):58頁

時(shí)間:2018-04-24

主流編程語言優(yōu)劣比較_第1頁
主流編程語言優(yōu)劣比較_第2頁
主流編程語言優(yōu)劣比較_第3頁
主流編程語言優(yōu)劣比較_第4頁
主流編程語言優(yōu)劣比較_第5頁
資源描述:

《主流編程語言優(yōu)劣比較》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、主流編程語言優(yōu)劣整理收集自:P57效果(www.52slimmer.com)這里,我將比較一下幾種主流編程語言:C,C++,Java,.NET,Ruby,JavaScript。其他主流編程語言,如Pascal,Delphi,我不太熟悉。希望熟悉的朋友能夠補(bǔ)全對(duì)這些語言的評(píng)價(jià)。至于Basic,它的版本差異很大,而且能力不太全面,這里也不做評(píng)價(jià)。語言特性對(duì)比表????????????????C??????????C++????????Java??????????.NET????????Ruby????????????JavaScript類型????????無類型??????

2、強(qiáng)類型??????強(qiáng)類型????????強(qiáng)類型??????強(qiáng)類型????????強(qiáng)類型靜態(tài)/動(dòng)態(tài)??????靜態(tài)????靜態(tài)??靜態(tài)檢驗(yàn)類型動(dòng)態(tài)解釋執(zhí)行??????動(dòng)態(tài)????????動(dòng)態(tài)支持面向過程??是????????是??????????????否????????????否??????????????否??????是支持基于對(duì)象??否????????是??????????????否????????????是??????????????是??????是支持范型??????否????????否??????????????是????????????是??????????

3、????否??????否支持模板??????否??????????是??????????????否????????????否??????????????否??????否支持面向?qū)ο??否????????是????????????是????????????是??????????????否????????否可能你對(duì)于我這樣的語言評(píng)價(jià)有些疑問,請(qǐng)首先看我的另一篇文章基于對(duì)象和面向?qū)ο缶幊谭妒奖嫖龊椭髁骶幊陶Z言中的應(yīng)用??理清相關(guān)的概念。我對(duì)與面向?qū)ο蠛突趯?duì)象的定義和流行的定義不太一樣。C語言優(yōu)劣考C語言由來讓我們先回顧一下歷史。電腦使用CPU指令,通過寄存器,內(nèi)存等物件執(zhí)行

4、計(jì)算。最早的編程,是直接使用代表CPU指令的機(jī)器碼編寫的。直接使用二進(jìn)制的數(shù)據(jù)編程,當(dāng)然很容易出錯(cuò)。于是,人們后來發(fā)明了一種方法,就是使用英語單詞作為助記符,代表各條CPU指令。這就是匯編語言?,F(xiàn)在,程序員可以使用英語單詞進(jìn)行編程,然后使用一個(gè)解釋程序,把匯編指令翻譯成機(jī)器語言,再交給計(jì)算機(jī)執(zhí)行。1970年,UNIX操作系統(tǒng)的研制者丹尼斯·里奇(DennisRitchie)和肯·湯普遜(KenThompson)為了更好地編寫操作系統(tǒng),發(fā)明了C語言。C語言比匯編語言更先進(jìn)。它使用了面向過程的編程范式。同時(shí)它仍是一門十分接近匯編語言,面向機(jī)器的編程語言。適合編寫操作系統(tǒng)和其

5、他直接操縱硬件硬件的編程。面向過程編程范式下面是我查到的過程式設(shè)計(jì)的定義:過程式設(shè)計(jì):1、自上而下(top-down)的設(shè)計(jì)方式:是一個(gè)自頂向下,逐步求精的過程;2、以main函數(shù)概括出整個(gè)應(yīng)用程序需要做的事情,而main函數(shù)由對(duì)一系列的子函數(shù)的調(diào)用組成;??????main中的每一個(gè)子函數(shù)都可以被精煉成更小的函數(shù)。重復(fù)這個(gè)過程,即可完成一個(gè)過程式的設(shè)計(jì);3、特征是以函數(shù)為中心,以函數(shù)作為劃分程序的基本單位,數(shù)據(jù)往往處于從屬地位。過程式設(shè)計(jì)的優(yōu)點(diǎn):易于掌握與理解,符合人們的思維習(xí)慣;過程式設(shè)計(jì)的缺點(diǎn):1、不能適應(yīng)問題比較復(fù)雜,或者需求經(jīng)常變化的情況;2、數(shù)據(jù)與操作分離開

6、,對(duì)數(shù)據(jù)與操作的修改變得很困難;3、程序架構(gòu)的依賴關(guān)系不合理:main函數(shù)依賴于子函數(shù),子函數(shù)又依賴于更小的子函數(shù);????而子函數(shù)往往是細(xì)節(jié)的實(shí)現(xiàn),這些實(shí)現(xiàn)是經(jīng)常變化的,造成的結(jié)構(gòu)就是:????程序的核心邏輯依賴于外延的細(xì)節(jié),一個(gè)細(xì)節(jié)上的小改動(dòng),會(huì)引起一系列的變動(dòng)。我對(duì)于面向過程編程范式是這樣理解的:面向過程編程,就是使用函數(shù)代表處理的過程。這些函數(shù)使用的數(shù)據(jù),要么是參數(shù),要么是外部的數(shù)據(jù)。使用函數(shù)編程,這看上去很像函數(shù)式編程。但面向過程的編程范式不同于函數(shù)式編程。函數(shù)式編程的函數(shù),一般不使用外部的數(shù)據(jù)。不維持外部的狀態(tài)。這有很多優(yōu)點(diǎn),但也同樣有了很大的局限性,不似面

7、向過程編程這樣方便。C語言就是典型的面向過程編程語言。它通過函數(shù)抽象了過程處理。函數(shù),就是C語言的接口。C語言中,數(shù)據(jù)常常作為全局的變量保存起來。這樣,使用C語言編程就很難保證其他代碼不破壞函數(shù)依賴的數(shù)據(jù)的狀態(tài)。這是C++基于對(duì)象編程范式出現(xiàn)的原因。這個(gè)我們稍后再說。我們?cè)倏纯碈語言對(duì)機(jī)器指令的抽象。C語言是一門十分接近匯編語言的語言。所以有人說C語言既是一門高級(jí)語言(面向過程,函數(shù)),也是一門低級(jí)語言(面向機(jī)器,直接反映計(jì)算機(jī)的實(shí)際計(jì)算過程)。C語言使用原生類型,數(shù)組,Struct等來表示數(shù)據(jù)。C語言中,數(shù)據(jù)在內(nèi)存中的表示是十分確定的。

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。