誰是代替C語言的“潛力股”?

jopen 8年前發布 | 27K 次閱讀 C語言 C/C++

在去年十一月的時候,我參與了《Which language has the brightest future in replacement of C between D,Go and Rust?And Why?》(譯文:《D、GO、Rust 誰會在未來取代 C?為什么?》)這篇文章的翻譯工作。但是依我看D語言和Rust很難成為代替C語言的語言。雖然不能否認從Rust 精確定義的語言和技術方法的深度都可以看出,它一門很好的語言。但是復雜語法讓很多程序員敬而遠之。

有潛力但力不從心的Java

不得不說,就Java良好的跨平臺性這一點來說,Java還是有潛力取代C語言的。但是自從Java隨著太陽公司(SUN)被甲骨文公司(ORACLE)收購以來,就顯得有一些力不從心。特別是最近甲骨文和谷歌之間的一些事情,讓Java顯得有些尷尬。

誰是代替C語言的“潛力股”?

如果我們把衡量一個編程語言能不能成為像C一樣的語言,除了運行速度和庫的豐富之外,我們還必須考慮,這個語言能不能寫編譯器、操作系統和數據庫。 顯然的我們考慮速度的話,那么內核是效率優先的,除了匯編,似乎并沒有什么語言有可能比C效率更高。但是并不是說Java不能寫,至少效率不如C。(Jnode操作系統除啟動程序之外由Java編寫,啟動程序由匯編語言編寫)

成長中的Go

Go目前是定位在服務器端的編程語言。它專門針對多處理器系統應用程序的編程進行了優化,使用Go編譯的程序可以媲美C或C++代碼的速度,而且更加安全、支持并行進程。 誰是代替C語言的“潛力股”? 并且Go已經實現了編譯器。但是如果一個領域中沒有現成的庫的話,上手都是問題。作為一個年輕的編程語言, Go需要的是時間。

C語言的親兒子C++

C++進一步擴充和完善了C語言,是一種面向對象的程序設計語言。一般大部分的C代碼可以很輕易的在C++中正確編譯,不過仍有少數差異,導致某些有效的C代碼在C++中失效,或者是在C++中有不同的行為。最常見的差異之一是,C允許從void*隱式轉換到其它的指針類型,可是C++并不允許。 誰是代替C語言的“潛力股”? 作為C語言的親生骨肉,C++并不是那么好上手,并且自從1983年C++誕生以來的,C++似乎一直也沒有代替C語言,雖然最開始的一段時間炒的挺火的。但是最近好像又出現走下坡路的趨勢了。

C語言會退役嗎

雖然很多語言都會說,它們的運行速度和效率和C一樣快。庫和C一樣豐富。但是C語言就像是匯編語言一樣,即使很少使用,也不會面臨退役。何況就目前而言C語言的壟斷地位雖然不斷被挑戰,但也從未被超越。

</div>

來自: http://www.ituring.com.cn/article/210739

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!