rust經(jīng)??ㄋ?Rust可能取代C語(yǔ)言嗎?
Rust可能取代C語(yǔ)言嗎?有些區(qū)域可以替換,但仍有一些場(chǎng)景將堅(jiān)持使用C語(yǔ)言。因?yàn)闅v史的原因,C語(yǔ)言是為UNIX系統(tǒng)誕生的,它的所有特性都是為硬件層上的抽象層服務(wù)的,就像一個(gè)內(nèi)置的建筑來(lái)代替基礎(chǔ)。雖然這
Rust可能取代C語(yǔ)言嗎?
有些區(qū)域可以替換,但仍有一些場(chǎng)景將堅(jiān)持使用C語(yǔ)言。因?yàn)闅v史的原因,C語(yǔ)言是為UNIX系統(tǒng)誕生的,它的所有特性都是為硬件層上的抽象層服務(wù)的,就像一個(gè)內(nèi)置的建筑來(lái)代替基礎(chǔ)。雖然這是可能的,但它是非常困難的。據(jù)估計(jì),要從rust重寫Linux內(nèi)核將需要大量的工作。這些不是語(yǔ)言能否實(shí)現(xiàn)的問(wèn)題,而是選擇的問(wèn)題。重寫信任的收入真的那么可觀嗎。操作系統(tǒng)的模式已經(jīng)存在,不可能有太大的改變。
信任可以用在操作系統(tǒng)的應(yīng)用開發(fā)中,比如:一些傳統(tǒng)的工控軟件,企業(yè)級(jí)的后臺(tái)軟件,直接面對(duì)的應(yīng)該是C、CSharp、Java、golang等
其實(shí)未來(lái)的趨勢(shì)應(yīng)該是集成,而不是替代。一個(gè)系統(tǒng)中的不同系統(tǒng)側(cè)重于不同的語(yǔ)言,這也是大型企業(yè)的發(fā)展趨勢(shì)。
還有一種可能是trust并沒(méi)有完全取代C,而是一種新的語(yǔ)言將取代它。
哪些軟件應(yīng)用值得用Rust重寫?
Rust是一種系統(tǒng)級(jí)編程語(yǔ)言,C和C的性能幾乎相同。大多數(shù)研究rust的程序員都對(duì)它替代C和C感興趣,因此原則上,C和C軟件可以用rust重寫。
但是rust是一種新的語(yǔ)言,它還沒(méi)有進(jìn)入成熟階段,所以在GUI領(lǐng)域它不能取代C。目前,rust還沒(méi)有任何成熟可用的GUI庫(kù),著名的QT也沒(méi)有rust版本。我也期待著像pyqt這樣的三方圖書館。
在web開發(fā)領(lǐng)域,當(dāng)前的版本Actix web、rocket、wrap尚未滿足我對(duì)web框架的期望。他們可以使用,但解決方案并不完美。有時(shí)我想花一些時(shí)間來(lái)實(shí)現(xiàn)一個(gè)web框架。
用rust完全重寫一些流行的軟件是不現(xiàn)實(shí)的,但是你可以用rust來(lái)解決一些難點(diǎn),就像tidb的一些函數(shù)使用rust一樣。其實(shí),我真的希望微軟能夠發(fā)揚(yáng)鐵銹,比如重寫一些微軟的軟件應(yīng)用程序。
為什么微軟不出一門像Go或者Rust的跨平臺(tái)系統(tǒng)級(jí)語(yǔ)言?
GitHub上有一個(gè)名為Verona的Microsoft語(yǔ)言研究項(xiàng)目,它從rust中吸取了教訓(xùn)。目前還處于初級(jí)階段,能否形成一種產(chǎn)品(一種新的語(yǔ)言)還很難說(shuō)。
我們剛出來(lái)的時(shí)候,都以為它能代替鐵銹。然而,根據(jù)目前的官方聲明,該項(xiàng)目還沒(méi)有準(zhǔn)備好在研究之外使用。這位官員希望這個(gè)項(xiàng)目的研究能給其他語(yǔ)言的發(fā)展帶來(lái)啟發(fā)和幫助。
如果你對(duì)語(yǔ)言設(shè)計(jì)感興趣,你可以看看這個(gè)項(xiàng)目。
為什么要用rust取代c/c 重寫python底層?
C.難以維護(hù)。Trust聲稱完全取代了C語(yǔ)言。這種語(yǔ)言的性能與C語(yǔ)言相同,沒(méi)有考慮內(nèi)存恢復(fù)(與Java中的GC不同,它是編譯的)。還有許多新特性,比如閉包、函數(shù)編程。而且可以兼容C
從學(xué)習(xí)的角度來(lái)看,肯定不會(huì)過(guò)時(shí)。
大學(xué)里幾乎所有的理工科學(xué)生都必須學(xué)習(xí)C語(yǔ)言。學(xué)習(xí)C將幫助您了解底層系統(tǒng)。
如果您想快速完成學(xué)業(yè)并找到工作,您介意學(xué)習(xí)高級(jí)語(yǔ)言Java、python、go等嗎。