IT之家 9月22日消息,9月20日,微軟Azure首席技術(shù)官(CTO)Mark Russinovich在推特上稱,建議業(yè)界棄用C/C++編程語言。
Mark Russinovich表示,是時候停止使用C/C++創(chuàng)建任何新項(xiàng)目了,如果需要non-GC語言的場景,建議使用Rust替代。為了安全和可靠,業(yè)界應(yīng)該宣布C/C++已被棄用。有大量的C/C++將被維護(hù)和發(fā)展數(shù)十年(或更長時間),對于新工具,他會偏向于使用Rust。
Rust被許多人認(rèn)為是C++的后繼者,并連續(xù)七年成為StackOverflow年度調(diào)查中最受歡迎的編程語言。此外,Rust也有望并入Linux 6.1中,也因此備受期待。
近年來,蘋果、微軟、谷歌、亞馬遜、Meta等科技巨頭都在使用Rust,而且自2019年以來,微軟一直在談?wù)搾仐塁/C++并探索Rust,還在開發(fā)自己的面向云的內(nèi)存安全編程語言,稱為Project Verona。因此,Russinovich呼吁棄用C/C++并非沒有先例。
據(jù)微軟稱,自2006年以來,它修補(bǔ)的CVE中約有70%是由于內(nèi)存安全問題造成的。消除這些錯誤將明顯提高軟件安全性,同時降低漏洞修復(fù)的成本。
IT之家了解到,外媒The Register向微軟詢問,是否Russinovich的建議在全公司范圍內(nèi)被采納,微軟官方拒絕置評。
不過,C++之父Bjarne Stroustrup回應(yīng)了該觀點(diǎn),他表示:
人們——尤其是高管——迷戀那些承諾可以讓他們的生活更輕松的新事物,這并不少見。此外,支持新事物遠(yuǎn)比解決舊工具和知名工具的已知問題更令人興奮。
不過,新語言通常需要多年時間和重大努力才能在其廣泛的應(yīng)用領(lǐng)域與成熟語言相匹配。愛好者很少看到這一點(diǎn),并且他們的評論往往是片面的。
在許多情況下,安全性顯然至關(guān)重要,因此多年來我一直致力于提高C++的安全性。
Stroustrup表示,現(xiàn)在可以在ISO C++中實(shí)現(xiàn)有保證的完美類型和內(nèi)存安全,而包括Rust在內(nèi)的每一種“安全”語言都存在允許不安全代碼的漏洞。替換它們或者只是讓它們安全是一項(xiàng)艱巨的任務(wù),必須逐步做到這一點(diǎn),否則大量不安全的C和老C++代碼將存在永遠(yuǎn)。