為什麼35歲的C++依然能主導程式設計世界
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
早在1979年,Bjarne Stroustrup設計了C++程式語言,並且C++很快成為了無處不在的通用系統程式語言。現在儘管有Java、Javascript、Python、Go,甚至是蘋果的Swift和它競爭,但C++依然處於主導程式設計世界的地位。
今天在Morgan Stanley的科技訪談會上,InfoWorld的編輯和Stroustrup暢聊了很多關於C++的問題,還談及了其他的程式語言,包括Google的Go語言和蘋果的Swift語言。以下是我們的訪談記錄。
InfoWorld:
您是怎麼看C++的未來的?現在有很多流行的指令碼語言,像Python和Javascript,當然還有很受歡迎的Java,甚至是Google的Go語言,C++如何從這麼多程式語言中存活下來,並且發展壯大?
Stroustrup:
這是個很棒的問題。在這20年時間裡,人們一直在預測C++將會滅亡,但是很高興的是它一直在成長和壯大。如果你進入到嵌入式領域,如果你想做一些複雜的影像處理,如果你需要實現一些微電子應用,如果你要開發一些金融管理系統,那麼C++是你的首選。也許你很少能看到C++的身影,但是在那些應用的底層,C++依然是撐起整個應用的頂樑柱。比如Google、Amazon、搜尋引擎等那些需要高效能的地方,C++就成了不可或缺的重要角色了。
InfoWorld:
Google的Go語言越來越被受到關注,您對Go語言的前景怎麼看?
Stroustrup:
當然這些程式語言可以非常優雅地實現一些功能,但是這些程式語言關注的是如何讓寫程式碼變得便捷和優雅,卻損失不少效能。當然,這些程式語言所做的貢獻我們也是有目共睹的。
InfoWorld:
一些指令碼語言的宗旨是解放程式設計師的雙手,那麼C++是否也會逐漸傾向於這個目標?
Stroustrup:
Oh,當然了。C++主要是為一些相當底層核心的應用設計的,它也經常會和其他的指令碼語言結合使用。一開始的時候,我是用C++來實現任何的應用,然後我就在Unix上使用shell作為指令碼語言設計一些底層應用。C++涵蓋了以下優秀的特性:高效能、易伸縮、佔用空間小、佔用資源少等等。
InfoWorld:
蘋果在今年6月份釋出了Swift語言,您是否認為由於蘋果公司的支援,Swift將越來越受到開發者的關注?
Stroustrup:
我認為是的,之前他們關注Objective-C,這回Swift真正進入了這些開發者的領域了。
InfoWorld:
C++面臨兩大挑戰:一方面要滿足開發者實現高效能、可擴充套件、高可靠性的應用程式,另一方面又需要能夠幫助開發者實現可維護的程式碼。關於這兩個問題您怎麼看?
Stroustrup:
我正要解釋這兩個問題,第一個問題是要儘可能的抽象和更高效地利用硬體資源,而後者則需要能儘可能簡化程式碼的編寫過程,從C++ 11到C++ 14,已經具備這樣的兼顧能力了。
今年我們會釋出一個新的C++版本,它參考了C++ 14的標準。當你在研發大型的產品時,也許C++ 11在某些方面已經無法滿足你的需求,但當出現C++ 14時,情況就會完全改變了,C++總是在不停地進步著。
InfoWorld:
關於程式的安全性問題,您怎麼看?程式設計師是否需要關注所有的安全問題?C++是否比其他程式語言安全呢?
Stroustrup:
我非常熱衷於解決硬體的安全問題。在程式語言方面,如果你想編寫優秀的程式,那麼你的程式碼一定要確保型別安全。你可以在C++中實現這一要求。不要總是圍繞著一些低效的功能轉,總的來說,安全問題是系統問題。
InfoWorld:
您是否還要探討關於C++或者軟體開發的其他任何問題?
Stroustrup:
我們的目標是讓軟體開發更加專業化。我們的社會中很多事情都是不能被打破的,其中大部分都需要依賴軟體。作為開發者,我們需要整體考慮到我們的系統,程式語言和開發工具只是其中的一部分,我們需要探究如何培養開發者,以及如何將重點放在程式的可靠性上。
譯文連結:http://www.codeceo.com/article/why-35-year-old-cpp-best.html
英文原文:Why the 35-year-old C++ still dominates 'real' dev
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- 為什麼35歲的C++在“真實”開發中仍佔主導C++
- 為什麼常說程式設計師35歲是道坎?程式設計師
- 為什麼我是世界上最好的程式設計師?程式設計師
- 為什麼 qt 成為 c++ 介面程式設計的第一選擇?QTC++程式設計
- 為什麼有些程式設計師悄無聲息渡過35歲中年危機?程式設計師
- 設計師為什麼要學程式設計,開發者為什麼要學設計?程式設計
- 35歲以上的程式設計師們,後來都幹什麼去了?程式設計師
- 為什麼為什麼為什麼為什麼為什麼你要做一名程式設計師?程式設計師
- 不拼顏值的程式設計世界你靠什麼上位?程式設計
- 作為遊戲設計師,能從動森的設計中學到什麼?遊戲設計師
- 為什麼說物件導向程式設計和函數語言程式設計都有問題物件程式設計函數
- 為什麼有的程式設計師不會程式設計?程式設計師
- 程式設計師:寫作能收穫什麼?程式設計師
- 為什麼程式設計師在學習程式設計的時候什麼都記不住?程式設計師
- 程式設計沒點為什麼,生活就是十萬個為什麼程式設計
- 物件導向程式設計C++物件程式設計C++
- 為什麼你學不好程式設計程式設計
- 程式設計師,為什麼如此迷茫?程式設計師
- 我為什麼是程式設計師?程式設計師
- 我為什麼痴迷於程式設計?程式設計
- 為什麼人人都要學程式設計程式設計
- 為什麼新人不會程式設計程式設計
- 為什麼我還在程式設計程式設計
- 我為什麼喜歡程式設計程式設計
- 為什麼程式設計師的工資那麼多!憑什麼?程式設計師
- 什麼是程式設計?大道之行也,“程式設計”為公程式設計
- 為什麼程式設計師喜歡在深夜程式設計?程式設計師
- 為什麼要投資程式設計師的幸福?程式設計師
- 為什麼要成為「無敵」程式設計師?程式設計師
- 程式設計師35歲後,不拼體力了還不能拼什麼?程式設計師
- 程式設計師你為什麼這麼累?程式設計師
- 為什麼物件導向程式設計是有用的?(以一個角色扮演遊戲為例)物件程式設計遊戲
- 程式設計為什麼不用中文?未來用中文程式設計可能麼?程式設計
- 什麼是物件?什麼是抽象?怎麼理解物件導向的程式設計思想?物件抽象程式設計
- 為什麼開源可以提高程式設計師的程式設計技能?程式設計師
- 女程式設計師,為什麼比男程式設計師少???程式設計師
- 程式設計師為什麼喜歡程式設計這項工作?程式設計師
- C++與物件導向程式設計C++物件程式設計