1、為什么要學習C/C++?
發現自己最拿手的java用起來真是笨手笨腳的,碰到好多實現起來巨繁瑣的問題,比如操作底層庫,和OS framework交互,做個用戶體驗好點的本地圖形程序等等,這些都是java的軟肋。
其實,我一直對底層頗感興趣,中也只能接觸一下JVM,但VM畢竟是VM,始終與底層失之交臂。
Linux、Mysql、Memcached、Boost、Apache、JVM、ACE......很多基礎服務都是用C/C++實現的,要像了解他們原理、能看懂代碼、可以修改bug、增加新功能模塊
開發嵌入式、中小型項目C/C++項目,維護C/C++項目......
加深對系統底層的理解
2、How學習C/C++?
下文是我整理的一些C++圖書列表,按順序閱讀,可涵蓋入門到精通。
《The C programming language》必讀
《C++Primer》,號稱是一本可以讓你從C或JAVA程序員轉為一個真正的C++程序員的入門參考書,必讀。
《The C++programming language》,C++之父,人稱B教主著作,在看過C++primer后,應該可以跳章選讀。
《Think in c++》,網上說此書的中文版翻譯質量奇差,推薦看影印版,選讀。
《Effective c++》,類似Effective java,講的是實踐,程序員必讀。
《More effective c++》,上書的補充。
《The C++standard library》,會寫C,不會用標準庫怎么行。這就跟java程序員不會用java.util包一樣,必讀。
《Effective STL》,STL庫的實踐。Effective C++作者又一力作,必讀。
《The annotated STL source》,STL源碼分析,這本書應該算是深入/精通類了,選讀。
《Generic programming and STL》,號稱C++編程里,就是跟模板,泛型打交道,那么精通泛型是勢在必行。
《C++Template》,C++模板編程,代碼復用的經驗之道,必讀。
《Exceptional C++》,跟Effective C++類似,屬于實踐和難題解析,書中列出了許多應用場景和實例代碼供讀者揣摩,選讀。
《More Exceptional C++》,上書的補充。
《Exceptional C++Style》,上上書的補充
《Inside The C++Object Model》,有了上面這些書做鋪墊,那么終于可以讀此神書了。它會帶你游覽C++對象模型的底層實現機制。讀完此書,任何C++代碼看起來如同行云流水,必讀。
3、優秀的C/C++開源項目(閱讀代碼)
OS:Linux kernel LVS、Linux應用程序
DB:Mysql、PostgreSQL
Complier:JVM、GCC
Framework:OpenSip、SipProxy、
Net:ACE(Java Mina、Netty)、TCP/IP、HTTP協議棧
Cache:Memcached、Redis、
Library:STL(java util package)、Boost、Qt(UI)、
balance:Apache、Nginx
以上就是關于“C++如何入門”的內容介紹,希望對大家學習有所幫助。想要了解更多關于學習C++的相關資訊歡迎來咨詢。