C++ 之父:C++ 是一切的無形基礎,透露編程語言生存 40 年祕訣!


 

C++ 的起源能夠追溯到 40 年前,但它仍然是當今使用最普遍的編程語言之一。程序員

到 2020 年 9 月爲止,C++ 是僅次於 C 語言、Java 和 Python,位於全球第四的編程語言。根據最新的 TIOBE 索引,C++ 也是增加最快的語言。編程

近日,C++ 之父 Bjarne Stroustrup 在接受外媒訪談的時候,對 C++ 成功的關鍵和 它40 年來的發展歷程進行了回顧。windows

 

C++ 的成功屬於意料以外

1979 年,C++ 的建立者 Bjarne Stroustrup 開始着手開發這種編程語言,該語言最初被設計爲對 C 語言對改進版,增長了基於面向對象編程的功能。瀏覽器

Bjarne Stroustrup 一開始沒想到 C++ 會得到如此大的成功,他說:「C++ 的成功顯然使人驚訝。我認爲它的成功取決於其最初的設計目標,就是有效的使用硬件,再加上強大的抽象機制,以及它根據來自實際使用狀況的反饋進行謹慎的發展。」安全

構建 C++ 之初,Bjarne Stroustrup 但願用通訊系統構建一個多計算機系統,該通訊系統能夠是共享內存,也能夠是網絡。他把重點放在了軟件上,去編寫底層的、接近硬件的代碼。例如存儲管理器,進程調度程序和設備驅動程序,以及分離軟件組件,便於它們能夠在運行使用更好的方式運行。網絡

40 年前,是沒有編程語言能夠勝任這項工做的,Bjarne Stroustrup 對此花了不少心思。併發

如今,C++ 已經成爲了最受開發人員歡迎的語言之一,鞏固了全球的系統和服務。編程語言

 

C++ 11 使 C++ 成爲一種新的語言

他從很早開始就意識到了這項工做不可能由他一我的來完成,但當時也只有 Bjarne Stroustrup 和他在貝爾實驗室的幾個同事全身心的投入其中。函數

隨着標準化進程加快,加入其中的人也愈來愈多,現在 C++ 標準委員會已有了 400 多名成員和更普遍的用戶羣體,他們共同努力影響着編程語言的發展方向。性能

1998 年是 C++ 正式標準化的一年,從那時起它就成了時間是最經常使用的編程語言之一,並至今都保持着這種地位。

Bjarne Stroustrup 說,其後 13 年到來的 C++ 11 爲 C++ 的發展奠基了基礎,他說:「C++ 11 使 C++ 感受像是一種新的語言。」

對併發的類型安全的支持是必不可少的,C++ 提供了相互支持的功能密集網絡,例如用於編譯時計算的函數、自動類型推導和可變參數模板的函數等等。

正如 Bjarne Stroustrup 所說,C++ 11 添加了一些新功能,這些功能可使事情變得更簡單,同時保持了兼容性和穩定性。不過,儘管 C++ 11 引入了一些使該語言更簡單、更快、更具表現力的新功能,但它仍是很是難掌握的。

Bjarne Stroustrup 坦言:「C++ 確實很複雜,要學會很好的使用它須要付出不少努力,但不少人想要的是更簡單還具備更多功能的語言,而且不會破壞現有代碼。」

對一種編程語言來講,最大的挑戰之一是就決定採用和忽略哪些功能達成共識,這自己就須要大量的努力,花費不少時間去討論。

但即便是這樣,也不是全部好的功能均可以被採用,必須添加真正對人們有幫助的東西。

 

C++ 流行幾十年的祕訣

對於如何在幾十年中保持 C++ 生存的祕訣,Bjarne Stroustrup 提到,「應該從小作起,闡明長期理想,並根據實際使用狀況的反饋來發展。」

確實,C++ 走到今天已經超過 35 年了,今天的 C++ 比早期的 C++ 更增強大且富有表現力。可是,直到今天,它的一些簡單程序仍在運行。

對於使用了數十年的系統來講,穩定性是一種很是重要的語言功能。事實上,許多早期的想法只有在 C++ 20 中才可用。

Bjarne Stroustrup 說:「從一開始我就知道我沒法構建理想的語言,因此我必須以漸進發展爲目標。我不相信有完美的語言,這對語言自己和使用語言的人都有不一樣的標準。」

Bjarne Stroustrup 還補充道:「進化是應對不斷變化的世界的挑戰和融合新思想的必要條件。」

 

C++ 是一切的無形基礎

C++ 是一種通用的編程語言,因爲其強大的功能和靈活性而受到開發人員的青睞,這使其成爲操做系統、Web 瀏覽器、搜索引擎(包括 Google)、遊戲和商務應用程序等的理想選擇。

Bjarne Stroustrup 總結道:「若是有一個問題須要高效使用硬件並處理至關大的複雜性,那麼C++顯然是不錯的選擇。」

Bjarne Stroustrup 還提到,COVID-19 大流行阻礙了 C++ 下的兩個迭代 C++ 20 和 C++ 23 的進展。

將來他們會推出新功能,並在每三年發佈一次修訂的標準,C++ 17 和 C++ 20 也會按時交付。

然而,儘管 C++ 已經普遍流行,但 Bjarne Stroustrup 仍是認爲很難準確指出它的用途。

他說:「在任何大型系統中,一般會在較低級別和對性能相當重要的部分中找到 C++。最終用戶甚至系統的其餘部分的開發人員一般都看不到系統的這些部分,所以有時我指的是 C++ 是一切的無形基礎。」


 

——【值得關注】個人 C/C++編程學習交流俱樂部!——

 

涉及:C語言、C++、windows編程、網絡編程、QT界面開發、Linux編程、遊戲編程、黑客等等......

一個活躍、高格調、高層次的程序員編程學習殿堂;編程入門只是順帶,思惟的提升纔有價值!

相關文章
相關標籤/搜索