0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linus諷刺:C++真是一門很爛的語言

Linux愛好者 ? 來源:CSDN ? 作者:CSDN ? 2021-04-25 14:22 ? 次閱讀

他來了他來了!Linus 帶著他的“暴脾氣”又來了!

近日,Rust 進(jìn)入 Linux 內(nèi)核的決定已正式提上議程,上周其內(nèi)核開發(fā)者 Miguel Ojeda 提交了一份在 Linux 內(nèi)核中添加 Rust 支持的 RFC 引起熱議。

對于這件事,許多人自然想知道 Linux 之父——Linus Torvalds 的看法,畢竟這是 Linux 這么多年以來,第一次要在其內(nèi)核中加入除了 C 以外的第二門編程語言。因而外媒 IT Wire 就此問題采訪了 Linus。

起初他還比較“矜持”,只是比較官方地回應(yīng)說 Linux 內(nèi)核對 Rust 的支持還在早期階段,等到 5.14 版本可能才會(huì)合并相關(guān)補(bǔ)丁。

但在知道有開發(fā)者認(rèn)為“應(yīng)該用 C++ 而不是 Rust”時(shí),Linus 的“暴脾氣”終于還是藏不住了。

他大笑并諷刺道:“C++ 真是一門很爛的語言!”

十多年來,堅(jiān)持站在炮轟 C++ 第一線

如果說,Linus 對 Linux 的“愛”這三十年來從未變過,那他對 C++ 的“恨”也可以說是十幾年如一日。

他早在 2007 年就開始炮轟 C++ 了。

彼時(shí),有位名為 Dmitry Kakurin 的開發(fā)者查看了 Git 源代碼發(fā)現(xiàn)使用的是純 C 而非 C++ 后,他表示不可理解,于是發(fā)帖噴道:“別拿可移植性說事兒,這是胡扯(原句這里是 BS,即 bullshit)?!?/p>

0ee36ce4-a534-11eb-aece-12bb97331649.png

好家伙,結(jié)果這句“BS”直接引爆了 Linus 的炸彈脾氣。

向來以言辭犀利著稱、甚至曾對 Nvidia 比中指的 Linus 自然不避諱什么臟話粗話,因此他回懟的第一句就“以其人之道還治其人之身”:“*YOU* are full of bullshit.”

報(bào)了“BS”的仇之后,Linus 接下來還把 C++ 批的一無是處:“C++ 是一門很糟糕的語言”、“很多不合格的程序員都在使用它”、“我要把喜歡用 C++ 而不是 C 來開發(fā)項(xiàng)目的程序員都踢出去,免得他們來搞亂我參與的項(xiàng)目”、“C++ 最后做出來的就是一堆可怕、難以維護(hù)的垃圾”。..。..

自此,Linus 與 C++ 算是徹底杠上。

這還不算完,2010 年,Linus 又在郵件列表中接連發(fā)帖吐槽 C++。依他來看,C++ 真是一門很爛的語言。他表示,無論什么時(shí)候 C++ 都不可能是最正確的選擇:系統(tǒng)編程里直接用 C 就可以,而非系統(tǒng)編程里,最好選擇一種有垃圾收集的語言,但 C++ 的特性除了搗亂,基本無用。

他還嘲笑 C++ 的 new 關(guān)鍵字很蠢,認(rèn)為“C++ 就是廢物,根本沒啥設(shè)計(jì),只是在 C 上面加了些渣滓而已?!?/p>

而這次采訪是 Linus 時(shí)隔多年以來再次于公共場合對 C++ 進(jìn)行炮轟。

再一次被罵“很爛”的 C++

這次引得 Linus 再次炮轟 C++ 的是 Linux Weekly News 網(wǎng)站上網(wǎng)友 @mss 的一條評論:

解決方案很簡單:用 C++ 代替 Rust。

當(dāng)代碼調(diào)用不安全函數(shù)時(shí),Rust 的內(nèi)存安全就得不到保證了,而目前幾乎所有內(nèi)核 API 都在其中。不過,你也可以輕松地使用 C++ 進(jìn)行此類手動(dòng)標(biāo)記。

本來呢,每個(gè)人都有發(fā)言權(quán)利,尤其在現(xiàn)在的互聯(lián)網(wǎng)時(shí)代,網(wǎng)友發(fā)言更加隨心隨性,哪種編程語言更好也自然是“仁者見仁,智者見智”。

可這對 Linus 來說可就不同了。他一直視 C++ 為“廢物”、認(rèn)為它“無用”,結(jié)果居然有人認(rèn)為他們精心挑選可以進(jìn)入 Linux 內(nèi)核的 Rust 還比不上 C++?

因此聽到這個(gè)評論的 Linus 沒控制住嗤笑出聲,他鄙夷說道:“C++ 根本解決不了 C 語言的問題,它只會(huì)讓事情變得更糟。這真是一門很爛的語言。”

他認(rèn)為,那些不喜歡 C 語言的人可以去尋找真正能給你帶來價(jià)值的語言。比如具有內(nèi)存安全性并可以避免 C 導(dǎo)致的隱患的語言,或者具有內(nèi)部 GC(垃圾回收)支持并簡化內(nèi)存管理的語言。而這個(gè)語言明顯不是 C++,因?yàn)樵?Linus 看來,C++ 解決的都是錯(cuò)誤的問題,因而那些說“用 C++ 重寫內(nèi)核”的人都太無知了。

與 C++ 相比,Linus 選擇無條件站在 C 這一邊?!爱?dāng)人們談到由 C 導(dǎo)致的危險(xiǎn)時(shí),也談到了 C 如此強(qiáng)大的部分原因:‘它允許你高效地實(shí)現(xiàn)所有這些低級的東西’?!盠inus 提到。此外,盡管大多數(shù)情況下 GC 對于簡化編程而言都是一件挺好的事,但是它通常不是你在低級系統(tǒng)編程中所能做的事情。

網(wǎng)友:C++ 不是垃圾

相信大家經(jīng)常可以在網(wǎng)上看到許多人爭論有關(guān)“最佳編程語言”的話題,但隨著時(shí)間的推移,越來越多新興編程語言的崛起,大多數(shù)的人都意識(shí)到了一個(gè)事實(shí):每種編程語言都有自身局限性,也擁有其最擅長的用武之地。

因此這次 Linus 把 C++ 罵得“一無是處”引來許多開發(fā)者的抗議。

網(wǎng)友@ Chuck Messenger :

C++ 的偉大之處在于它“就是 C”。你能用 C 語言做一些 C++ 做不到的事情嗎?據(jù)我所知沒有。在每次新的迭代中,C++ 都提供了對抽象的改進(jìn)支持,

我對 Rust 很感興趣,也有可能向它遷移。但是,C++ 在任何意義上都不是“垃圾”。

0f1e0b6a-a534-11eb-aece-12bb97331649.png

網(wǎng)友@stikves:

他說 C++ 不適合 Linux 內(nèi)核可能是對的。不過對于 C++ 這個(gè)語言。..。..大家都知道他的看法一直比較強(qiáng)烈吧。

當(dāng)然,C++ 也適用于其他操作系統(tǒng),比如 Windows、Mac OS,甚至Android。所以這都取決于不同的項(xiàng)目。

0f684bda-a534-11eb-aece-12bb97331649.png

這次 Linus 又把 C++ 程序員得罪了一通,不過這么多年來他的“暴脾氣”也沒怎么改,或許就跟編程語言一樣,Linus 的“火爆”也是部分開發(fā)者的“心頭好”吧!

原文標(biāo)題:Linus 再次吐槽“C++ 真是一門很爛的語言”

文章出處:【微信公眾號(hào):Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3544

    瀏覽量

    93489
  • C++
    C++
    +關(guān)注

    關(guān)注

    21

    文章

    2090

    瀏覽量

    73408

原文標(biāo)題:Linus 再次吐槽“C++ 真是一門很爛的語言”

文章出處:【微信號(hào):LinuxHub,微信公眾號(hào):Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    C++能不能讓編譯器自動(dòng)推導(dǎo)變量類型嗎

    隨著計(jì)算機(jī)性能的持續(xù)提升,編程語言似乎迎來了次大爆發(fā),各種編程語言不斷出現(xiàn),樂意折騰的人總能找到一門適合自己胃口的編程語言。
    的頭像 發(fā)表于 10-24 17:22 ?2014次閱讀

    未來嵌入式系統(tǒng)的黃金搭檔 MCX N947遇上Rust

    ? Rust 介紹 Rust 是一門注重安全的語言,相比于 C/C++/ASM 有著更高級的抽象能力、編譯器帶來的安全特性與廣泛友好的社區(qū)支持。 Linux 與 Windows 內(nèi)核也
    的頭像 發(fā)表于 07-25 09:14 ?1205次閱讀
    未來嵌入式系統(tǒng)的黃金搭檔 MCX N947遇上Rust

    C++語言基礎(chǔ)知識(shí)

    電子發(fā)燒友網(wǎng)站提供《C++語言基礎(chǔ)知識(shí).pdf》資料免費(fèi)下載
    發(fā)表于 07-19 10:58 ?6次下載

    c語言,c++,java,python區(qū)別

    C語言、C++、Java和Python是四種常見的編程語言,各有優(yōu)點(diǎn)和特點(diǎn)。 C語言
    的頭像 發(fā)表于 02-05 14:11 ?1678次閱讀

    vb語言c++語言的區(qū)別

    Microsoft開發(fā)的種面向?qū)ο蟮氖录?qū)動(dòng)編程語言。它的設(shè)計(jì)目標(biāo)是簡化編程過程,讓初學(xué)者也能快速上手。與之相比,C++語言種通用的、
    的頭像 發(fā)表于 02-01 10:20 ?1804次閱讀

    C++簡史:C++是如何開始的

    的 MISRA C++:2023 博客系列的第二部分。 在這篇博客中,我們將深入探討 C++ 的歷史、編程語言多年來的發(fā)展歷程以及它的下步發(fā)展方向。
    的頭像 發(fā)表于 01-11 09:00 ?494次閱讀
    <b class='flag-5'>C++</b>簡史:<b class='flag-5'>C++</b>是如何開始的

    C語言C++中那些不同的地方

    C語言雖說經(jīng)常和C++起被大家提起,但可千萬不要以為它們是個(gè)東西?,F(xiàn)在我們常用的C
    的頭像 發(fā)表于 12-07 14:29 ?855次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>和<b class='flag-5'>C++</b>中那些不同的地方

    如何選擇創(chuàng)建c語言c++

    選擇創(chuàng)建 C 語言C++ 都需要綜合考慮多個(gè)因素。在決定使用哪種語言之前,我們需要對這兩種語言的特點(diǎn)、優(yōu)缺點(diǎn)、適用場景、學(xué)習(xí)成本等進(jìn)行全
    的頭像 發(fā)表于 11-27 15:58 ?530次閱讀

    visualc++怎么新建c語言文件

    Visual C++個(gè)集成開發(fā)環(huán)境(IDE),用于開發(fā) CC++ 程序。在 Visual C++ 中,新建
    的頭像 發(fā)表于 11-27 15:57 ?3308次閱讀

    c++怎么開始編程

    C++種高級的、通用的編程語言,用于開發(fā)各種類型的應(yīng)用程序。它是從C語言演變而來,也是種靜
    的頭像 發(fā)表于 11-27 15:56 ?828次閱讀

    發(fā)那科伺服電機(jī)維修是一門杰出的技術(shù)本領(lǐng)

    發(fā)那科伺服電機(jī)維修是一門復(fù)雜的技術(shù)服務(wù)行業(yè)
    的頭像 發(fā)表于 11-23 10:52 ?438次閱讀

    C/C++語言學(xué)習(xí)大全套

    電子發(fā)燒友網(wǎng)站提供《C/C++語言學(xué)習(xí)大全套.rar》資料免費(fèi)下載
    發(fā)表于 11-18 14:33 ?2次下載
    <b class='flag-5'>C</b>/<b class='flag-5'>C++</b><b class='flag-5'>語言</b>學(xué)習(xí)大全套

    基于Rust開發(fā)的編程語言

    Move 是一門由 Rust 語言開發(fā)的一門面向資產(chǎn)的編程語言,最早由 Facebook (現(xiàn) Meta )投入大量的人力物力開發(fā),用于 Libra (現(xiàn) Dime )項(xiàng)目,處理全球性
    的頭像 發(fā)表于 11-17 12:30 ?620次閱讀

    單片機(jī)編程語言可以用c++嗎?

    單片機(jī)編程語言可以用c++嗎?
    發(fā)表于 11-09 06:40

    C++之父新作帶你勾勒現(xiàn)代C++地圖

    為了幫助大家解決這些痛點(diǎn)問題,讓大家領(lǐng)略現(xiàn)代C++之美,掌握其中的精髓,更好地使用C++,C++之父Bjarne Stroustrup坐不住了,他親自操刀寫就了這本《C++之旅》!
    的頭像 發(fā)表于 10-30 16:35 ?751次閱讀
    <b class='flag-5'>C++</b>之父新作帶你勾勒現(xiàn)代<b class='flag-5'>C++</b>地圖