本書單針對C++的學習,主要分為四大部分,以程式語言學習為主,涉及部分作業系統、計算機網絡、Linux開發的必讀書籍。
有初學者入門必讀,也有適合高階段同學讀的書籍,大家可以選擇性閱讀!
1、《c++語言的設計與演化》
作者:[美]BjarneStroustrup
推薦原因:C++的設計者關於C++語言的最主要著作之一,可以用來理解C++的設計思路
2、C++ primer
作者:[美] Stanley B. Lippman / [美] Josée Lajoie / [美] Barbara E. Moo
推薦原因:算是工具書,內容很多,建議當成字典或者參考書使用,在語法上遇到什麼問題或者編譯有問題都可以在這本梳理找答案。
3、Effective C++
作者:梅耶(ScottMeyers)
推薦原因:建議反覆閱讀,是很多關於C++方面面試問題的出處
4、More Effective C++
作者:梅耶(ScottMeyers)
推薦原因:C++代碼的典型案例,書中不僅僅是分析STL的源碼,而且還會有大量的STL使用示例,這些示例完全足夠讓讀者對STL有一定的了解。另外,通過這本書來複習數據結構再好不過,裡面對各種二叉樹、查找、排序等的描述非常詳細,而且非常注重效率
6、Effective Modern C++
作者:[美]ScottMeyers
推薦原因:基於C++11/14,基本上每個Item都會讓你有新收穫
7、深度探索C++對象模型
作者:[美]StanleyB·Lippman
推薦原因:每個C++程式設計師必修之讀物,只是內容稍顯陳舊。整本書對C++的對象內存形式,繼承的實現,多重繼承,靜態對象等做了詳細描述。
8、The C Programming Language
作者:Brian W. Kernighan / Dennis M. Ritchie
推薦原因:簡單高效,不適合新手讀。裡面的習題建議都認真做一遍
深入理解計算機系統
作者:RandalE.Bryant/DavidO'Hallaron
推薦原因:本書對於計算機體系結構的講解非常細緻,有很多非常有意思的Lab。這本書從程序執行的計算機角度開始,介紹了處理器的體系結構,程序的機器級優化,虛擬存儲器,系統級IO,網絡等等多個方面。推薦大家和 CMU 15-213 CSAPP 這門課一塊看。
Unix環境高級編程
作者:史蒂文斯(W.RichardStevens)/拉戈(StephenA.Rago)
推薦原因:對於所有層次UNIX程式設計師都是一本不可或缺的參考書。
1、計算機網絡原理:自頂向下方法
作者:James F. Kurose / Keith W. Ross
推薦原因:深入淺出,詳略得當,初學者很好的入門教材。
2、TCP/IP詳解卷一
作者:[美]W·RichardStevens
推薦原因:TCP/IP方面的經典之作,不過有一定的難度
推薦原因:通俗易懂,對Web程式設計師友善的HTTP協議入門知識書。對HTTP知識的覆蓋程度到易讀性都做得相當好,具體開發中用到哪塊可以再深究。比較適合有計算機網絡專業知識基礎的讀者閱讀。