日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Rust會在2024封神嗎?

一直被人詬病學習門檻太高的Rust語言,此次公布的規(guī)劃目標也極其明確,未來很有可能吸引更多的開發(fā)者學習和使用這門語言。本文將對Rust語言的特點、優(yōu)劣勢、使用現(xiàn)狀等情況進行梳理,希望能夠?qū)Υ蠹矣兴鶐椭?/p>

十載專注成都網(wǎng)站制作,成都企業(yè)網(wǎng)站定制,個人網(wǎng)站制作服務,為大家分享網(wǎng)站制作知識、方案,網(wǎng)站設計流程、步驟,成功服務上千家企業(yè)。為您提供網(wǎng)站建設,網(wǎng)站制作,網(wǎng)頁設計及定制高端網(wǎng)站建設服務,專注于成都企業(yè)網(wǎng)站定制,高端網(wǎng)頁制作,對成都辦公空間設計等多個行業(yè),擁有豐富的網(wǎng)站制作經(jīng)驗。

在最新一期的TIOBE 4月編程語言排行榜中,Rust語言位列第28名。

TIOBE 4月編程語言排行榜第1-20名

TIOBE 4月編程語言排行榜第21-30名

Rust 2024路線圖曝光

Rust 2024路線圖包含三大目標,首先就是降低學習門檻:Lang Team 希望在新版本中能夠簡化程序,使開發(fā)者只需處理其領域的固有復雜性,不再需要處理Rust的意外復雜性。

針對這一愿景,該團隊提出了四個目標:

  • 更精確的分析,更少的繁瑣:通過改進借用檢查器、類型推理等,使編譯器能夠更好地識別代碼是否正確。識別并消除 "boilerplate" 模式,例如到處復制粘貼同一組 where。
  • 更容易、更直接地表達代碼的意圖:在必要時擴展語言,以便更直接地表達您希望代碼執(zhí)行的操作,例如通過語法糖的形式(如 let-else),或者擴展類型系統(tǒng)(如泛型關聯(lián)類型)。
  • 改進異步支持:將 async-await 支持擴展到當前的 "MVP" 之外,如traits 中的 async fns、async drop 等特性。
  • 讓 dyn Trait 更有用:拓寬可用于 dyn 的特性集,讓使用 dyn 更接近于使用泛型。

其次是擴展生態(tài)系統(tǒng):Lang Team 表示,有很多事情是庫作者不能做的,或者不容易做的。比如他們無法控制用戶看到的錯誤信息,或者部署一個需要特殊選擇才能使用的“不穩(wěn)定”特性。因此,該團隊希望通過幫助管理功能的生命周期或擴展庫的功能,使庫作者能夠更好地為用戶服務。

最后是Rust項目擴展:為了盡可能使Rust發(fā)揮作用,確保Rust的質(zhì)量、穩(wěn)定性和整體一致性,該團隊希望新版本能夠及時查看狀態(tài)、明確的所有者和溝通、具有工具支持的高效開放的流程。

目前距離Rust2024還為時尚早,Rust的路線圖有可能隨著時間的推移,不斷進行優(yōu)化升級。

目前來看,Rust的用戶群體不斷壯大,有數(shù)百家公司使用Rust進行開發(fā),比如 Dropbox、 Yelp 和 Cloudflare。作為一門發(fā)展趨勢良好的編程語言,Rust的特點還是非常突出的。

特征:C在玩刀,Rust在玩跑酷

Rust的主要特征是運行速度快、內(nèi)存利用率高,它沒有運行時或垃圾收集器,它適合用在對性能要求高的關鍵的服務,它可以在嵌入式設備上運行,并且很容易與其他語言集成。在未來,Rust語言的速度快、占用內(nèi)存少等特點,將使我們能夠更省力的編寫代碼,這類語言將變得更加重要。

可靠性:Rust 豐富的類型系統(tǒng)和所有權模型保證了內(nèi)存和線程的安全,并能夠在編譯時消除許多錯誤。

生產(chǎn)力:Rust 有很好的文檔,提供了一個非常友好的編譯器,錯誤信息提示非常友好。反觀C和C++代碼的編譯器提示消息則是出了名的難以理解。如果你想學習系統(tǒng)編程,使用“rustc”編譯器做可以讓你不用擔心內(nèi)存安全而能夠?qū)W⑵渌氖虑椤?/p>

正如一位著名的程序員曾經(jīng)說過:Pascal就像穿著緊身衣,C就像在玩刀,而C++就像在玩弄燃燒的電鋸。在這個比喻中,Rust就像是穿著保護裝備懸掛在繩子上做跑酷運動。看起來有點可笑,但是可以用它做各種很酷的動作而不傷害自己。

效率:先抑后揚、后發(fā)制人

關于Rust的效率問題,主要從學習、運行、開發(fā)三個維度進行考量。

1、學習效率

眾所周知,Rust的學習曲線陡峭,隨著學習的不斷深入,你會逐漸發(fā)現(xiàn) Rust 之難,不在于很容易學到的語言特性,而在于:

  • 實踐中如何融會貫通的運用
  • 遇到問題(生命周期、借用錯誤、自引用等)時如何迅速正確地解決
  • 大量的標準庫方法記憶及熟練使用,這是保證開發(fā)效率的關鍵
  • 心智負擔較重,特別是初中級階段時

2、運行效率

得益于各種零抽象開銷、深入底層的優(yōu)化潛力、優(yōu)質(zhì)的標準庫和三方庫實現(xiàn),Rust具備非常優(yōu)秀的性能,與C語言、C++是同一個級別。

Rust還有一個極大的好處:只要按照正確的方式使用Rust,無需性能優(yōu)化,就能實現(xiàn)非常優(yōu)秀的表現(xiàn)?,F(xiàn)在有不少用Rust重寫的工具、平臺都超過了原來用C、C++實現(xiàn)的版本,可以說是將老前輩拍死在沙灘上,儼然成為一種潮流。

3、開發(fā)效率

Rust的開發(fā)效率可以用先抑后揚來形容,在剛開始上手寫項目時,你的開發(fā)速度將顯著慢于Go、Java等語言,但等你開始熟悉標準庫常用的方法,開發(fā)效率將大幅提升,甚至形成“肌肉記憶”后,開發(fā)效率將不會慢于這些語言,而且原生就能寫出高質(zhì)量、安全、高效的代碼。

益處:個人和團隊“變強”利器

對個人的好處

首先,學習Rust語言,可以使你成為更好的程序員。要學好Rust,你需要深入理解內(nèi)存、堆棧、引用、變量作用域這些其它高級語言往往不會深入接觸的內(nèi)容,同時Rust會通過語法、編譯器和clippy這些靜態(tài)檢查工具半幫助半強迫的讓你成為更優(yōu)秀的程序員,寫出更好的代碼。

與此同時,當你掌握了Rust,你自發(fā)性的就會想要去做一些更偏底層的工作,這些都可以幫助你更加了解操作系統(tǒng)、網(wǎng)絡、性能優(yōu)化等底層知識,也會間接或者直接地接觸到各種算法、數(shù)據(jù)結(jié)構實現(xiàn)。

慢慢的,你就成為那個更好的程序員了,也是更優(yōu)秀的自己。

其次,學習Rust語言,可以增加不可替代性。這里需要說明一下,語言難學,其實也有好處。一旦掌握,你將具備較強的不可替代性,而不再是一個簡單的工具人角色。看看現(xiàn)在內(nèi)卷嚴重的Java,工具人有多少?一個人離職,另外一個人立刻就能替補上。

事實上,這對個人和公司是一種雙贏,公司收獲了更優(yōu)秀的程序員(不可否認的是Rust程序員普遍水平很高,畢竟都是有很好的其他語言基礎、也很有追求的自驅(qū)性人才),而個人也收獲了更穩(wěn)定的工作環(huán)境甚至是更高的收入。

對團隊的好處

客觀來講,Rust語言的代碼質(zhì)量其實還是相當不錯的。開發(fā)者在review時并不用擔心潛在的各種坑,因此可以實現(xiàn)快速的開發(fā)、review、merge流程。

由于Rust語言擁有強大的編譯器和語言特性,其代碼自然就會比其他語言更少出現(xiàn)Bug。同時Rust擁有非常完善的工具鏈、最好的包管理工具。種種因素疊加在一起,決定了Rust非常適合大型開發(fā)者團隊的協(xié)作開發(fā)。

也許Rust在開發(fā)速度上不是最快的,但是從開發(fā)+維護的角度來看,這個成本絕對是各個語言中最小的之一。還有一點很重要,團隊如果招到一位優(yōu)秀的Rust程序員,他會帶動周圍的人,一起慢慢優(yōu)秀(優(yōu)秀的Rust程序員較好辨別,門檻低的語言就沒有那么好辨別)??傊?,一位優(yōu)秀的程序員會給團隊帶來遠超他薪資的潛在回報和長遠收益。

相比其他語言,Rust的優(yōu)勢

由于篇幅有限,這里不做詳細對比,只是簡單介紹下Rust的優(yōu)勢,但也并不是說Rust就一定優(yōu)于這些語言,大家可以在評論區(qū)各抒己見。

C++

與C++相比,Rust的性能相差無幾,但是在安全性方面更優(yōu),特別是使用第三方庫時,Rust的嚴格要求會讓第三方庫的質(zhì)量明顯提高。

語言本身的學習,Rust的前中期學習曲線會更陡峭,但是對于未來使用場景和生態(tài)的學習,C++會更難、更復雜。

Java

除了部分純粹的數(shù)字計算性能,Rust的性能是全面領先于Java的,同時Rust占用內(nèi)存更小,因此如果想實現(xiàn)同等規(guī)模的服務,Rust所需的硬件成本顯然更低。

Python

性能方面Rust完勝,同時Rust對運行環(huán)境要求較低,從這兩點上就基本可以做出選擇了,因為Python和Rust的彼此適用面其實并不沖突。

Go

Rust語言表達能力更強,性能更高,同時線程安全方面Rust也更強,不容易寫出錯誤的代碼,包管理Rust也更好,Go雖然在1.10版本后提供了包管理,但目前還比不上Rust的。

使用現(xiàn)狀

  • AWS從2017年開始就用Rust實現(xiàn)了無服務器計算平臺: AWS Lambda 和 AWS Fargate, 并且用Rust重寫了Bottlerocket OS和AWS Nitro系統(tǒng),這兩個是彈性計算云(EC2)的重要服務
  • Cloudflare是Rust的重度用戶,DNS、無服務計算、網(wǎng)絡包監(jiān)控等基礎設施都與Rust密不可分
  • Dropbox的底層存儲服務完全由Rust重寫,達到了數(shù)萬PB的規(guī)模
  • Google除了在安卓系統(tǒng)的部分模塊中使用Rust外,還在它最新的操作系統(tǒng)fuchsia中重度使用Rust
  • acebook使用Rust來增強自己的網(wǎng)頁端、移動端和API服務的性能,同時還寫了Hack編程語言的虛擬機
  • Microsoft使用Rust為Azure平臺提供一些組件,其中包括IoT的核心服務
  • Github和npmjs.com,使用Rust提供高達每天13億次的npm包下載
  • Rust目前已經(jīng)成為全世界區(qū)塊鏈平臺的選擇開發(fā)語言
  • Tidb,國內(nèi)最有名的開源分布式數(shù)據(jù)庫

開發(fā)者對Rust的評價

@Graydon Hoare:

Rust 是一種采用過去的知識解決將來的問題的技術。

@Elon Musk

我是 Rust 粉絲,但我選擇 C/C++。

@wenq1:

給高手增加了自律的工具,給小白降低了造坑的幾率,給招聘增加了難度,給裝X增加了談資。

@beeplin:

Rust 前途無量,將來凡是有內(nèi)存的機器上一點都會跑Rust。因為上世紀七十年代 Joan Baez 女神就預言過:We both know what memories can bring, it can bring diamonds and rust.

女神順便還預言了 Rust 一定是免費的,因為:If you offer me diamonds and rust, I have already paid.

順便問一下,另一個 Diamonds 語言現(xiàn)在發(fā)明出來沒?期待......

@徐辰

Rust特別適合用來重寫那些讓你不爽的項目,給你換個姿勢再不爽一次的機會。

@feixu

編程語言多的是,沒必要為了一個排名10之外的語言操心,前十的語言足夠支持人類信息社會的發(fā)展,再多這是重復造輪子而已。

寫在最后

Rust是一門現(xiàn)代化的語言,融合了多種語言特性,且應用廣泛。在學習Rust的過程中,你會發(fā)現(xiàn)自己編程能力的不足,改正掉這些不足就會不斷提升自我。卓越的編程語言,可以將優(yōu)秀的設計、思想、成功的經(jīng)驗,自然而然地融入其中,使更多的使用者開闊眼界、拓展思路,受益無窮。

無GC、效率高、工程性強、強安全性等特點已經(jīng)得到工程派和學院派的認可,這些令Rust擁有了自己的特色和生存空間,社區(qū)的友善,生態(tài)的快速發(fā)展,大公司的跟進,都預示著Rust將有一個美好未來!

客觀來說,語言只是工具,我們不能神化它,但是可以給它一個機會。隨著Rust語言版本的不斷更迭,也許某一天你會發(fā)現(xiàn)它才是你的真愛!


標題名稱:Rust會在2024封神嗎?
分享鏈接:http://www.5511xx.com/article/dpeidcg.html