[討論] Google開發工具工程總監:Rust 開發者的
Google開發工具工程總監:Rust 開發者的生產力是 C++ 的兩倍
過去兩年,Rust 程式語言風頭正勁,而 C / C++ 則略顯疲態。Google近日分享了他們將專案從 Go 和 C++ 程式碼遷移至 Rust 的經驗,結果令人驚訝:Rust 開發者的效率竟然可以達到 C++ 團隊的兩倍。
Google Android平台工具的工程總監 Lars Bergstrom 在倫敦舉行的 Rust Nation 英國峰會上分享了這一消息。
過去幾年,業界對於 Rust 的安全性和可靠性一直存在疑慮。Bergstrom 指出,由於擔心「unsafe」這個關鍵字,許多人認為使用 C++ 更為穩妥。然而,隨著人們逐漸意識到非記憶體安全語言帶來的挑戰,以及美國等國家政府將目光投向軟體在關鍵基礎設施扮演的角色,這種觀念正悄然發生改變。
Bergstrom 強調,如今美國等國家政府都愈發重視軟體在關鍵基礎設施中的作用,而絕大多數大型程式碼庫的安全漏洞都源於記憶體安全問題。由於 Rust 程式碼在恰當的使用下能有效避免此類問題,記憶體安全儼然成為了國家安全議題之一。
微軟:建議新專案使用 Rust 取代 C / C++
微軟 Azure 首席技術長 Mark Russinovich 早在 2022 年 9 月就建議新專案使用 Rust取代 C / C++。如今,這種趨勢正從全新項目擴展到老舊程式碼的重寫。今年早些時候,微軟號召開發人員協助將 C# 程式碼移植至 Rust。網路安全研究小組 (ISRG) 的
Prossimo 項目也正致力於用 Rust 重寫關鍵庫的核心開源部分 (例如 NTP、DNS、TLS),以提升記憶體安全性。
當然,並非所有人都認同這一趨勢。C++ 創始人 Bjarne Stroustrup 認為,通過適當的工具,C++ 也可以實現與 Rust 等記憶體安全語言相同的保障,且成本更低。美國國家網路總監辦公室發佈的軟體安全報告也引來了一些評論,指出記憶體安全只是軟體安全挑戰的一部分,不應該被過分誇大。卡內基梅隆大學軟體工程研究所強調,每種程式語言都各有優劣,選擇應以適合項目為原則。
然而,Google等 Rust 擁護者的實踐案例則反駁了 Stroustrup 關於成本優勢的說法。
Bergstrom 表示,將 Go 程式碼 (被認為是記憶體安全但性能較低) 轉寫成 Rust 的過程中,Google取得了顯著的成效,「遷移過程所需團隊規模和時間幾乎與 Go 開發相當,並沒有降低效率。更重要的是,記憶體使用率降低了,漏洞率也隨之減少,程式碼正確性得到提升。」
C++ 程式碼遷移至 Rust 的效率提升明顯
更令人驚訝的是,將 C++ 程式碼遷移至 Rust 的效率提升更加明顯。
「在所有案例中,用 Rust 建構和維護服務的所需工作量都減少了一倍以上,」
Bergstrom 指出,「這對我們來說意義重大,因為 C++ 程式碼的維護成本很高,需要龐大的團隊投入大量精力,並且存在諸多風險。」
Bergstrom 還提到,Google正進行類似的 Java 到 Kotlin 的遷移項目。根據內部匿名調查,兩種情況下開發者掌握新語言並達到原有開發效率所需的時間大致相同。大約三分之一的開發者在兩個月後,以及一半的開發者在四個月後表示他們在新語言中的工作效率與舊語言相當。
此外,超過一半的開發者認為 Rust 程式碼更容易審查。Bergstrom 分享了一個調查中最令團隊驚訝的問題:“人們對自己團隊的 Rust 程式碼的正確性有多麼自信?” 調查結
果顯示,有 85% 的開發者給出了肯定的答覆。Bergstrom 表示,這是一個非常高的數字。
--
rust好像很威,請問c++值得轉到rust嗎
有時間跟有興趣學的話當然好
但先看看現在職缺的數量差異,可能就要再想想
以WASM來說,RUST的開發體驗跟GO比不知道如何
WASI起得來的話,應用場景應該可以更多
前陣子有聽到製造業前輩想把專案從PHP重構成NodeJS
目前來看主流還是c Java 換語言先不論學習成本 舊有的
系統多得是不能放棄的 新創可以轉rust試試而已
台灣rust有缺嗎?求職網搜了下感覺有10個就不錯
看了一下 rust才1%左右 感覺像公關文了==
++就是垃圾
主要是原生開發的比例本來就比較少 不要說Rust C++也少
在C++裡面又有很大比例是靠框架開發 嵌入式這種
所以能不能換過去就要看上游框架遷移的進度
perl才是地表最強
台灣資方:Rust薪資也給30K以上面議,反正有AI輔助
有錢的公司就能一直換最新技術造輪子,一般公司還不是要等
所有供應商換了才有得換
比較有名的那幾個語言任何一個以開發效率而言都能把c/c++
按在地上摩擦吧 c/c++一直都是以犧牲開發效率換取程式執
行效能的啊
有錢公司誰跟你狂造輪子== 拿LLM來說也是誰有能力直接
整個挖過來 你現在GITHUB能放個有潛力的作品 也是把人
整個挖過去 後續代碼更新 維護也有保障
開源聽起來好像沒錢賺 公司看到就兩條路 一是直接拿去
營利 二是把人挖過來 後續更新維護 持續營利 規模極大
的可以免費更新 靠其它方式營利 即便是擴大使用者族群
也可以 只有目光短淺才選一
微軟不推個Rust.NET嗎 寫應用層的還是比較多吧
賣害人了
除非你都一輩子寫高階語言
就會吹
RUST真的比較安全,至少記憶體上面是這樣
台灣別想了吧,根本沒什麼職缺
一般公司爛code寫下去就遺害5年以上 才沒閒人力說換就換
原來台灣職缺這麼少喔...
然後C++的效能是rust的一百倍
感恩Rust 讚嘆Rust Rust是拯救世界的光 R門
嘻嘻想看c++如何快100倍,樓上可以寫個程式來展示一下嗎
rust跟c++在同樣情境下效能差不多吧...
只是你要重寫整個c++不容易,不然google會重寫chromium
當然不可能重寫 所以Google推的語言轉換都有一定相容性
不過Google對C++有意見一陣子了 之前還在試Carbon
有點意外google內部有團隊特必把go專案改寫成rust
我猜是內部流動率太高,留下來的文件不夠完整加上
收進來的人沒寫過C++導致維護成本大幅提高
其實很多人寫過 但C++的可維護性就是那麼差
C++只有編譯效能快吧 Rust編譯前做一堆檢查會拖到編譯速度
效能大同小異R
*程式執行效能
個人沒什麼動力用 特愛體量小(不論編譯器本身還是生
成的執行檔) 編譯速度快 效能也很好的東西
編譯速度當然很重要 你一個套件都要編譯半天 更別說
全系統等級的 現在軟體越來越肥 編譯又很久 換了不就
更久... 如果入linux核心簡直不可想像
編譯全系統需時十幾二十分鐘的簡直是夢幻逸品 不過絕
跡了
所以go要完了嗎
長期來看rust比較好,至少語言層級就有內建機制管理資源
文章內編譯速度怎麼一點都沒有提,真的太慢了.
yacto跑一次一個半小時,換rust不敢想
rust在template上就是做不到cpp這麼屌,所以兩個根本是
懶叫比雞腿
豬快讓我笑死了 Rust的metaprogramming功能超強
連個皮毛都不懂就出來在那邊B0988698088
id變成形容詞我快笑死
B0988698088 xDDD
太直接了吧 XDDD
說到C++ vs others 我記得大概20年前就看過一篇文章 內容
大致是說「多少年來各種XX語言揚言要幹掉C++ 如今C++仍然
屹立不搖」 一轉眼20年過去了..... ha
2024年C++還是各種新舊語言的假想敵 哈
少在那邊瞎裝逼,rust metaprogramming跟cpp比多虛弱早
就一堆討論。他媽的你在那邊吹rust拿template來吹是三小
?半瓶水響叮噹?有真的把cpp的metaprogramming看進骨子
裡?還是他媽又是個非EECS半路出家的
CRTP、SFINAE、偏特化、移動語意兼完美轉發
現在軟體業就是一堆邪魔歪的,人人都會寫程式,每個智商
都有對應適合的語言,然後掌握了就以為自己神功護體,渾
然忘記為何以前真強者都要經過cpp的淬煉
現在這個時代css html都能混口飯吃,沒問題。但是學完自
己喜歡的語言,老二翹上天以為自己程式神人才他媽的可悲
你講的那些有誰不懂? 現在懂這種基礎就能出來吹阿XD
SNIFE、偏特化 我看你吹這些連metaprogramming都還沒
摸到
好啦 GGer乖乖幫我公司代工晶片啦
南無阿彌陀佛
現在還有人在戰語言 多學一門有很難嗎 可能對低智商
而言多學一門是真的很難 只好暴跳如雷
反串的蠻不錯的
snife我真的沒聽過,跟SFINAE有關嗎?
兩倍不知道怎麼估的
各位冷靜==
戰語言真的無聊 等RUST缺多了不學的自然被達爾文
翻譯:c++工程師太貴
媽的就你不懂啊,rust缺東缺西結果你他媽的說自己懂在那
邊吹rust metaprogramming行?媽的明明就是在超模版公認
缺乏的東西硬要說行?上面少把這件事移花接木成「戰語言
」。整件事是有個瞎逼在那邊吹rust無所不能連metaprogra
mming也能與cpp平起平坐。我從來沒說rust沒存在意義,我
說的是rust比cpp就他媽的懶叫比雞腿,rust模板編程弱雞
,結果Skank自己瞎逼跳出來說rust也有metaprogramming不
輸cpp,公三小?
有一件事是肯定的啦 10~15年後RUST發展的怎樣我不敢說
但八成又可以看到某新興語言又標榜自己哪裡哪裡勝過C++
c++在哪個情境下會比rs快一百倍?跟java比都不見得快
那麼多了
c++模板元編程有幾個人懂?懂的人有幾個在用?用的人
寫出來的東西有多少可以好好維護?90%的人需要的元編
程功能用trait就能搞定,剩下的9.9%用 procedural ma
cro也能搞定
c++元編程這麼屌的話,怎麼還沒看到像 rust sqlx 這
種可以從資料庫推斷出型別的函式庫
如果c++ 模板元編程這麼屌,c++20幹嘛還搞個concept
,像過去那樣動輒噴出十幾頁的模板編譯錯誤不好嗎?
連c++那種可笑的移動語意也能吹捧 它的移動語意這麼
屌 幹嘛還需要 linter 來抓 use after move 錯誤?這
裡誰沒寫過幾個有bug的移動建構子?為什麼各種建構子
和operator=之間的一致性還要由程序設計師來負責?
go寫的大型工具 取代java大型工具一陣子了 應該不太可能
死掉
go 強項在 cloud-native 吧,很難死掉
佩吉:"宣導一下go好嗎,薪水拿假的?"
我個人站在lturtsamuel這邊
個人看法啦...Go嫌vm肥,但要丟卻也丟不乾淨,而且在
容器的世界跟別人一樣也只是個原生程序,因此除非那些
工具開發者特別利用Go獨有的功能開一條方便整合的路
給Go專用,否則它或許可以欺負沒有編成原生的vm語言,
但是跟同為原生的程式相比未必討得到太多便宜。
戰語言的時候 C是不是都躲在旁邊偷笑
Google 台灣 新進員工 大部分基本行情是到那
古歌 台灣 基本行情 軟工的基本計價 亞虎 李建復 ㄜ
台灣 雅虎 軟工的基本計價呢 ㄜㄜㄜ
日本 雅虎呢
How about Japan yahoo software salary Ummmmmm
文無第一?改成武鬥如何?找相同的題目來比。
真的不要去管C,反正pointer 來pointer 去就好。
語言武鬥傳(誤)
戰語言比刷題串好看多惹
19
→ qwe78971: 有錢公司誰跟你狂造輪子== 拿LLM來說也是誰有能力直接 04/27 19:29 Google abseil自己重新刻hash、random、map、mutex等等 (族繁不及備載) Meta(facebook)的folly 我看 快要全包了12
推 strlen: 這哪算輪子?有種連組語都重新刻啦 呵 04/27 23:57 → Apache: 連chip都自己刻 04/28 00:20 Google 自已刻TPU, 自製Arm CPU「Axion」 Apple 自已玩CPU, GPU, OS, COMPILER, IDE...資工有教的他都有做,沒教的也有做。 AWS 野心更大,前幾年陸續推出多款自己設計的運算晶片(AWS-Designed Chips),7
另外一個相反的例子。 三年後離開 Rust 遊戲開發 討論的火熱。Rust算是ycombinator吹捧的語言。
56
Re: [閒聊] 寫程式真的這麼邪門嗎?: 初五開工 這邊用C++給大家玩一個小遊戲 一個hello world等級的小程式 #include<iostream>34
[討論] Java持續失寵排名被C++超越首度落至第4名Java持續失寵,12月TIOBE Index排名被C++超越首度落至第4名 TIOBE Index 12月程式語言受歡迎排名,Java被C++超越首次落到第4名,而這也是C++自 2003年以來,再度有望成為年度語言 文/李建興 | 2022-12-07發表 程式語言排名TIOBE Index在2022年末,公布12月最受歡迎的程式語言排名,前三名分別31
[情報] 微軟要讓開發者以Rust編寫Windows驅動程微軟要讓開發者以Rust編寫Windows驅動程式 微軟繼續推動擴大採用Rust,公開可供開發者以Rust編寫Windows驅動程式的平臺,但目 前該專案還處於早期開發階段,不適合用於商業用途 文/李建興 | 2023-09-27發表 微軟Azure技術長Mark Russinovich在X平臺(前推特)發文,公開最近微軟擴大採用Rust14
[問卦] C++到底難學在哪裡C++是物件導向,比C困難吧? 打開Cpp語言的程式碼 我看到的不外乎質樸的for循環、 列印的語法、函數、參數。 雖然覺得C++看來看去就是類似的感覺,甚至比javascripts感覺更簡陋一些。6
[問卦] 微軟要用Rust重寫Windows?如題 今天看新聞 說微軟想要用Rust來重寫Windows 在更之前 戰爆C++的林姓商人,也打破數十年的傳統 讓Rust進入linux kernel3
[心得] 2020-1-31 每日新聞# 2020-1-31 每日新聞 # rust 1.41了! 除了一些功能更新 重要的是不再支援32-bit Apple產品了1
[心得] 2020-2-14 每日新聞#每日新聞 # 2020-2-14 每日新聞 # FB: # 四元交換排序 quadsort 在各種情況都贏快速排序法3
[心得] 2020-3-23 每日新聞#每日新聞 # 2020-3-23 每日新聞 # FB: # 用python做流體模擬