softnshare / candcpp

C & C++ 技術討論/知識管理共筆
https://softnshare.wordpress.com/slack/cc/
32 stars 5 forks source link

Why I don't spend time with Modern C++ anymore #9

Open maoyang opened 8 years ago

maoyang commented 8 years ago

https://tw.twincl.com/cpp/*652o

C++的網友大家對這篇文章有任何看法嗎?

mht commented 8 years ago

作者顯然也是經驗老道的 C++ 開發人員,所以提出的批評非無的放矢。我同意目前的 C++ 語言規格還有許多改進空間,但完全不認同這句話:

C++ today is like Fortran: it reached its limits.

什麼鬼?

C++ 語言規格書的進展公認緩慢,但這幾年加入的新功能,以及計劃中的功能,讓 C++ 又活了起來。要說已經頂天了,在我看來真的是鬼話。

作者提到的領域(FPGA)我不熟,所以無從置喙。其他地方需要多一些時間思考,有機會再把想法寫下。

maoyang commented 8 years ago

有一本書叫-編程的頂尖對話, 英文 Coders at Work , 第一張訪談的開發者 Jamie Zawinski , 他是Lisp高手, 也是Netscape早期員工, Netscape內建的郵件閱讀器, 他就是開發者之一, 他不太喜歡C++, 反對的理由, 以下從書裡面摘錄

他們一開始就用C++, 對此我極力反對, 該死的是, 結果證明我是對的. 是使用C++一切變的臃腫不堪. 另外還引入了大量相容性的問題, 因為用C++程式設計時, 沒人能斷定C++哪部分是可以安全使用的. 有個傢伙說他要用樣板, 結果你會發現, 沒有哪兩個編譯器實現樣板的機制是一樣的

他講的問題目前應該是比較成熟了, 當年C++要透過Compiler去編譯出, Windows, Mac, Unix版本問題應該很多

mht commented 8 years ago

Jamie Zawinsk 好像是那個造型古怪的傢伙,去年的 Mozilla 影片有看過他。Linus Torvalds 也不喜歡 C++(這是美化過的,這位先生的用詞不會這麼保守),理由雷同。

近幾年 C++ 編譯器的發展很快,不是所有問題都解決了,但肯定沒有以前那麼慘(廢話XD)。Chromium 專案有明確規定哪些 Modern C++ 功能可以用,哪些不能用,鑑於不少 Chromium 專案開發者來自 Firefox,我想那些都是切身之痛吧。

不過,Chromium 專案對於 Modern C++ 新功能,看來是隨著編譯器的發展而漸漸放寬,也間接表示對新功能的認同。這是我的看法。