接觸 C++ 已有七八年光景,積累了一些心得想與大家分享。文中推薦的書籍大多有電子版可供查閱,但技術類書籍閱讀體驗上,實體書仍是首選;圖書館是尋找實體書的好去處,而電子版更適合作為隨時查閱的參考手冊放在電腦裡。
我將推薦書籍分為三大篇章:基礎篇(本文)、Windows 篇、Linux/Unix 篇。以下是基礎篇的詳細分類推薦:
《C++ Primer》
我的 C++ 入門讀物是《C++ 大學教程》,該書八百餘頁,一個學期講完,時間充裕,讓我有足夠時間消化吸收。書中 80% 的代碼我都親自上機運行過;後來再看《C++ Primer》時,僅花一週時間就翻完了。兩書都是入門佳作,內容全面。初學者至少應將這類基礎書完整過一遍,打穩地基。
《Effective C++》
《C++ 必知必會》
《More Effective C++》
有了語言基礎後,便要深入細節,領會 C++ 精髓。《Effective C++》可視為 C++ 疑難解惑手冊,針對語言深層機制、易錯知識點給出滿意解答,值得反覆品讀。《C++ 必知必會》與《More Effective C++》則是對前者的補充,適合在讀完前者意猶未盡時續讀。這三本書篇幅不厚,屬於小冊子級別,各自只需幾天即可啃完。
《C 專家編程》
《C 和指針》
C++ 源於 C,指針、地址偏移計算、大小端分析等底層知識,仍需靠這類硬通貨書籍深入剖析。雖然書不厚,但閱讀難度較大,信息量極大,多為平時 C++ 開發中未曾留意卻至關重要的知識點,能帶來「知其所以然」的暢快感。想徹底掌握 C++ 底層,這兩本書不可錯過,指針講解尤為透徹。
《C++ 標準程序庫》
《泛型編程與 STL》
《STL 源碼剖析》
《C++ 標準程序庫》屬百科全書類型,講解基礎但語言平淡,適合作參考手冊;我挑選了感興趣且薄弱的部分(如智能指針)閱讀,收穫頗豐。《泛型編程與 STL》對萃取機制及泛型概念論述透徹,前六章為核心篇章不可跳過,後續章節可作手冊查閱,對常用算法和容器分類講解並提供大量示例。《STL 源碼剖析》是深入 STL 的必讀經典,可通過以下問題自測:1. deque 實現機制與迭代器插入刪除過程;2. 紅黑樹插入刪除調整流程;3. 萃取器的幾種實現方式。
《超越 C++ 標準庫——Boost 程序庫導論》
當標準庫無法滿足需求時,Boost 閃亮登場。編程講究開發效率與運行效率,C++ 屬於後者強、前者弱的類型。Boost 作為標準庫的擴展,提供了正則表達式、智能指針、函數對象、Lambda 等強大工具,大幅提升開發效率與代碼優雅度。此書為 Boost 入門經典,旨在激發興趣;有了興趣後,直接上 Boost 官網按需取用即可。
《設計模式》
《設計模式精解》
《道法自然》
《設計模式》是領域聖經,但風格偏參考手冊,逐頁閱讀較枯燥,建議在對大部分模式有了解後再讀,更易找到興趣點。《設計模式精解》是我的入門書,通過實例講解模式用法及「為什麼用模式」,但僅覆蓋十餘個模式,意猶未盡,適合初學者。《道法自然》是國人佳作,以自寫框架系統貫穿全書講解模式應用,深刻體現模式在大型框架專案中的實戰價值。熟悉 MFC 的讀書更能獲益,書中專門解析 MFC 設計思想,甚至解釋了 MFC 中 `theApp` 全局變量的作用——這是我見過唯一解釋此問題的書籍。
《編程珠玑》
講解數據結構與算法技巧的壓軸好書,不容錯過。
基礎篇暫告一段落,後續將推出 Windows 篇與 Linux/Unix 篇,敬請期待。
作者: 大CC | 發布日期:2012-12-26
博客:blog.me115.com | 微博:新浪微博
本文出自 “colin” 博客,轉載請保留出處:原文鏈接