您的位置:首頁>正文

C++如何進階?本文來給你一個完美的思路,祝你走上C++大牛之路

語言基礎入門:

l C++ Primer 《C++入門》(通常不用中文名)

有第三版和第四版, 如其名, 是C++入門的不二選擇, 是全面廣泛的參考書目, 內容豐富, 筆觸嚴謹。 如果說Bjarne Stroustrup是C++之父的話, 那麼Lippman可以說是C++之母了:)

l The C++ Programming Language 《C++程式設計語言》

有第三版特別版, 剛剛為一個朋友買了一本, 不用說了 Bjarne Stroustrup寫的, 權威之作, 可以說與C++ Primer是同等廣博的“聖經”級別的參考書。

l Essential C++ 《C++基礎》

同樣是入門的基礎, 也是由Stanley B. Lippman執筆的作品, 研究語法, 語意再好不過的了。

學程式設計最重要的是實踐, 就是寫代碼、看別人寫的代碼、再寫代碼, 你看再多的書, 不寫代碼, 你還是不會程式設計。 但是寫代碼也要講究方法循序漸進, 不能剛學了幾天語法, 就想寫個作業系統什麼的, 樹立這種不切實際的目標只會讓你的自信受到嚴重打擊迷失自我。 同時小編推薦一個學C/C++的學習群627819188無論你是大牛還是小白, 是想轉行還是想入行都可以來瞭解一起進步一起學習!群內有很多乾貨和技術分享!

進階, 經驗與慣用法:

l Effective C++ , More Effective C++

這幾本我認為應當歸在一起介紹, 老實說這些條款是開發項目以及平時學習中不可缺少的Golden Tips, 反復閱讀, 你會發現這些條款實在是再深刻不過的了。

l Exceptional C++ , More Exceptional C++ , Exceptional C++ Style

這三本也是該歸在一起的, Herb Sutter是C++標準委員會的老大, 現在人在微軟, 他的書當然也是相當具有啟發意義的。

l C++ Coding Standards: 101 Rules, Guidelines, and Best Practices 《C++ 程式設計規範》

這本最近又看了一遍也是感到尤其深刻, 案頭書的描述再好不過了, 裡面豐富的名言, 豐富的內涵, 以及每次重複閱讀都能有新的發現, 哎, 不稱之為經典也不幸哎!

進階B, STL與範型(GP):

作為標準庫的一部分, STL已經深入我們的開發生活, vector,list,deque,set,map等等都是我們首選的容器, iterator的機制已經無可厚非地被接受,

STL引入的範型也給我們打開了一閃窗。

l The C++ Standard Library 《C++標準程式庫—自修教程與參考手冊》

STL怎麼用?看看本書吧。 Nicolai M.Josuttis好像也是C++標準委員會的成員, 也是C++ Template的作者。

l Effective STL

簡單的使用後的提升。 會使用STL還不夠, 還必須知道什麼時候選擇什麼STL元件, 這是STL使用的必讀書。

l Generic Programming and the STL: Using and Extending the C++ Standard Template Libra 《泛型程式設計與STL》。

書的副標題很謙虛, 似乎說本書只是使用和擴展, 其實本書可謂GP理論入門的必讀, STL的內涵與設計都可以看到。 這本書理論性較強, 但是真的很嚴謹, 而且並不是非常難懂。 理解其中對於Concept的解釋, 將是非常重要的。

l C++ Standard Template Library 《C++ STL》

兩位STL庫的設計人員P.J.Plauger和Meng Lee, 講述STL實現的原理。 這不是講述使用程式庫的, 而是講述程式庫實現原理的。 腸胃不好的, 需要慢慢吸收。

l C++ Template 《C++範本》

本書可謂全面介紹了範本的使用細則,

但介紹的細節不是很細緻, 歸類不如C++ Primer, 當然範本的基本用法都可以看到。 在閱讀STL、Boost或者Loki的原始程式碼之前, 請仔細閱讀本書, 它可以減輕一些閱讀的煩惱。 這本書是討論C++範本的權威。

l C++ Template Metaprogramming : Concepts, Tools, and Techniques from Boost and Beyond

本書沒有看到中文版, 也是一本介紹範本元程式設計的專業參考書, 十分細緻地講述了高級的範本技術, 只是本書只有英文版的。

C++進階之路(二)

再進階A, 底層機制:

l The Annotated C++ Reference Manual

標準庫的全面解析, BS老大為標準庫量身定做的很OFFICAL的參考。 簡稱:ARM

l Inside the C++ Object Model 《深度探索C++物件模型》

即使反復學習了進階A, 依然有許多語言實現方面的Puzzle問題, 尤其是虛繼承, 臨時物件等令人麻煩的深層問題值得學習, Lippman以一位專家的身份給了我們一個深窺語言內部的可能, Lippman的書都有C和底層實現的影子。

再進階B, 設計模式:

l 15. Design Patterns - Elements of Reusable Object Oriented Software 《設計模式》

GoF聽說過嗎?Gang of Four(四人幫:)就是說的本文的四位作者, 他們是設計模式總結的先驅, 看了本書之後, OO的設計模式會深入裡的大腦。

由於模式的細微性過大, 所以不能被代碼化, 只是一種概念, 可以說是體現在項目中的靈魂。

l Modern C++ Design : Generic Programming and Design Patterns Applied 《C++設計新思維》

本書最近好好地研究過了,這裡終於要介紹Andrei Alexandrescu了,他是Real公司的專案經理,是GP範本技術的天才,他的高深範本技術影響了BOOST以及全世界的範本怪傑,本書中他介紹他的庫Loki,雖然庫十分激進沒有實際用途,當時展現的絢爛的特技令人嘆服!同時本書是設計模式用範型實現的經典展現,以及Policy設計模式在其中的極致應用,直接影響了BOOST的adaptor設計(7個Policy)甚至影響了標準庫的智慧指標項目(雖然最後被否認了,當時絕對是完美的實現方法)。簡稱MCD。在閱讀MCD之前,建議先閱讀一下《C++ Template》。

C++進階之路(三)

其他高級:

l The Design and Evolution of C++ 《C++語方的設計和演化》

又是BS老大的一本,值得一看。簡稱D&E,內容並不艱深,Bjarne的書,僅此,就值得一讀。

l 《對象揭秘:Java、Eiffel和C++》

你對C++不滿嗎?這本書可以部分地幫你完成抱怨的目標。也許它還可以讓你不迷信C++。

l Imperfect C++ 《不完美的C++》

本書介紹了許多新一代技術,以及C++很多有趣的技術,BS本來想把它加入C++ In Depths行列的,可惜最後說了一句:“如果本書再少一些,也許我會考慮的。”就完了,但是無論如何本書都是一本好書,值得一看。

本文最後祝所有正在學習C++,或者尋求進階的小夥伴早日成為一名優秀的C++程式師。

本書最近好好地研究過了,這裡終於要介紹Andrei Alexandrescu了,他是Real公司的專案經理,是GP範本技術的天才,他的高深範本技術影響了BOOST以及全世界的範本怪傑,本書中他介紹他的庫Loki,雖然庫十分激進沒有實際用途,當時展現的絢爛的特技令人嘆服!同時本書是設計模式用範型實現的經典展現,以及Policy設計模式在其中的極致應用,直接影響了BOOST的adaptor設計(7個Policy)甚至影響了標準庫的智慧指標項目(雖然最後被否認了,當時絕對是完美的實現方法)。簡稱MCD。在閱讀MCD之前,建議先閱讀一下《C++ Template》。

C++進階之路(三)

其他高級:

l The Design and Evolution of C++ 《C++語方的設計和演化》

又是BS老大的一本,值得一看。簡稱D&E,內容並不艱深,Bjarne的書,僅此,就值得一讀。

l 《對象揭秘:Java、Eiffel和C++》

你對C++不滿嗎?這本書可以部分地幫你完成抱怨的目標。也許它還可以讓你不迷信C++。

l Imperfect C++ 《不完美的C++》

本書介紹了許多新一代技術,以及C++很多有趣的技術,BS本來想把它加入C++ In Depths行列的,可惜最後說了一句:“如果本書再少一些,也許我會考慮的。”就完了,但是無論如何本書都是一本好書,值得一看。

本文最後祝所有正在學習C++,或者尋求進階的小夥伴早日成為一名優秀的C++程式師。

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示