1. 程式人生 > >python學習大家庭群 472309261 java學習交流群532259952

python學習大家庭群 472309261 java學習交流群532259952

c++程式設計教程
c++程式設計思想
c++大學教程
c++程式設計語言
資料結構演算法與應用c++語言描述
c++標準模板庫——自修教程與參考手冊
泛型程式設計與STL
深度探索c++物件模型
設計模式—可複用面向物件軟體的基礎
重構—改善既有程式碼的設計
Essential c++
Effective c++
More Effctive c++
C++ primer

前五本應該屬於入門書籍,後面的屬於學習難度比較大的,想提高C++的程式設計能力,看看這些書籍有好處。建議你把程式設計思想這本書多看看。多做練習題,對提高程式設計水平的幫助是很大的。

其實語言是相通的,一門語言學會了,學習其他語言就比較容易了。 業界有這樣一種說法,因為JAVA這門語言包含了C++的一些特性,掌握了C++,就等於掌握了JAVA的80%。

如果你想學習c/c++可以來這個群,首先是三三零,中間是八五九,最後是七六六,裡面有大量的學習資料。

C++ 書籍大匯

語言基礎入門:

  1. C++ Primer 《C++入門》(通常不用中文名)
    by Stanley B. Lippman
    有第三版和第四版,如其名,是C++入門的不二選擇,是全面廣泛的參考書目,內容豐富,筆觸嚴謹。
    如果說Bjarne Stroustrup是C++之父的話,那麼Lippman可以說是C++之母了:)

適合有豐富C經驗,缺乏C++經驗的。不過我個人一直認為此書帶著過於強烈的C語言的痕跡,對於C++的學習未必是好事。

  1. The C++ Programming Language 《C++程式設計語言》
    by Bjarne Stroustrup
    有第三版特別版,剛剛為一個朋友買了一本,不用說了 Bjarne Stroustrup寫的,權威之作,可以說與C++ Primer是同等廣博的“聖經”級別

的參考書。

簡稱TC++PL,有其他語言的豐富經驗的。(也有人簡稱之為“TCPL”,但需與另一本《The C Programmer Language》區分開來)

  1. Essential C++ 《C++基礎》
    by Stanley B. Lippman
    同樣是入門的基礎,也是由Stanley B. Lippman執筆的作品,研究語法÷語意再好不過的了。

  2. Accelerated C++
    by Andrew Koenig and Barbara E. Moo
    夫妻一同的作品,Koenig夫婦可以說也是頂尖領域的專家,相比Barbara E. Moo比較注重教學,這本本人同晨星老大一樣沒有讀過,當時它的

副標題應該能說明一些內容了吧。
Practical Programming by Example 通過例項來實踐程式設計

這兩本薄一些,都是不錯的選擇。《Accelerated C++》本人沒有讀過,從各方面的評價來看,完全值得推薦。

以上的書籍都應該隨手查閱的,即使是將來,也有一些細節可能一下不能回憶依然需要查閱,然而這四本內容涉及程度有一定的交叉,可以選

擇而讀,個人認為和晨星的建議一樣:TC++PL是應該閱讀的。

進階A,經驗與慣用法:

  1. Effective C++ , More Effective C++
    by Scott Meyers
    這幾本我認為應當歸在一起介紹,老實說這些條款是開發專案以及平時學習中不可缺少的Golden Tips,反覆閱讀,你會發現這些條款實在是再

深刻不過的了。

簡稱EC。C++程式設計師必讀!很多時候,我們說C++聖經不是指TC++PL,而是這一本。《The Pragmatic Programmer》一書中寫到:“一旦

你發現自己要參與C++專案的開發,趕快跑(不要走)到書店去購買Scott Mayer的《Effective C++》,可能還要《More Effective C++》”。

可見晨星對於Scott Meyers的這兩本推薦的程度了!

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

  2. C++ Coding Standards: 101 Rules, Guidelines, and Best Practices 《C++ 程式設計規範》
    by Herb Sutter and Andrei Alexandrescu
    這本最近又看了一遍也是感到尤其深刻,案頭書的描述再好不過了,裡面豐富的名言,豐富的內涵,以及每次重複閱讀都能有新的發現,哎,

不稱之為經典也不幸哎!

個人認為此書應為C++程式設計師必備的案頭書。幾乎Effective系列和Exceptional系列都在這裡得到了總結。最新的模板、異常的業界經驗

都在這裡的到了體現。可能的唯一缺陷就是對一個新手而言,關於“為什麼這麼做”的問題,解釋的不夠。
我的看法是:如果你不理解其中的條款,記憶,並且照做;如果你理解其中的條款,我猜你一定會同意書中的觀點。我認為這本書中的內容至

少在2009年以前都不會過時,人們將廣為傳誦它制定的101條戒律。
還不知道他的簡稱,也許“101”會成為一個候選者?

晨星的評論似乎有點冗長,作為進階的Guidelines,絕對是首選。

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

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

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

  1. The C++ Standard Library 《C++標準程式庫—自修教程與參考手冊》
    A Tutorial and Reference by Nicolai M.Josuttis,
    STL怎麼用?看看本書吧。Nicolai M.Josuttis好像也是C++標準委員會的成員,也是C++ Template的作者。

聽說過STL嗎?這本書會教你最基本的,也是最重要的STL的使用。這本書,應該是必讀的。

  1. Effective STL
    簡單的使用後的提升

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

  1. Generic Programming and the STL: Using and Extending the C++ Standard Template Libra 《泛型程式設計與STL》。
    Using and Extending the C++ Standard Template library by Matthew H.Austern
    書的副標題很謙虛,似乎說本書只是使用和擴充套件,其實本書可謂GP理論入門的必讀,STL的內涵與設計都可以看到

這本書理論性較強,但是真的很嚴謹,而且並不是非常難懂。理解其中對於Concept的解釋,將是非常重要的。

  1. C++ Standard Template Library 《C++ STL》
    by P.J.Plauger,Alexander A.Stepanov, Meng Lee,David R.Musser
    兩位STL庫的設計人員P.J.Plauger和Meng Lee,講述STL實現的原理

這不是講述使用程式庫的,而是講述程式庫實現原理的。腸胃不好的,需要慢慢吸收。

  1. C++ Template 《C++模板》
    by David Vandevoorde, Nicolai M. Josuttis
    本書可謂全面介紹了模板的使用細則,當然本人認為介紹的細節不是很細緻,歸類不如C++ Primer,當然模板的基本用法都可以看到。

在閱讀STL、Boost或者Loki的原始碼之前,請仔細閱讀本書,它可以減輕一些閱讀的煩惱。這本書是討論C++模板的權威。

C++ Template Metaprogramming : Concepts, Tools, and Techniques from Boost and Beyond
by David Abrahams and Aleksey Gurtovoy

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

再進階A,底層機制:

  1. The Annotated C++ Reference Manual
    by Margaret A.Ellis and Bjarne Stroustrup
    標準庫的全面解析,BS老大為標準庫量身定做的很OFFICAL的參考。
    簡稱:ARM

  2. Inside the C++ Object Model 《深度探索C++物件模型》
    by Stanley Lippman
    即使反覆學習了進階A,依然有許多語言實現方面的Puzzle問題,尤其是虛繼承,臨時物件等令人麻煩的深層問題值得學習,Lippman以一位專

家的身份給了我們一個深窺語言內部的可能,正如晨星所言,Lippman的書都有C和底層實現的影子。

C程式設計師讀後一定會覺得C++原來並不神祕。

再進階B,設計模式:

  1. Design Patterns - Elements of Reusable Object Oriented Software 《設計模式》
    by Erich Gamma,Richard Helm,Ralph Johnson,and John Vlissides

老實說不應該把設計概念的東西拿到這裡來,當時本書大多數以C++語言為例子,也是我們應該學習的。
GoF聽說過嗎?Gang of Four四人幫:)就是說的本文的四位作者,他們是設計模式總結的先驅,看了本書之後,OO的設計模式會深入裡的大腦。
由於模式的粒度過大,所以不能被程式碼化,只是一種概念,可以說是體現在專案中的靈魂。
還要提到的是最近John Vlissides去世了,在此我對他的逝世感到萬分的惋惜。

  1. Modern C++ Design : Generic Programming and Design Patterns Applied 《C++設計新思維》
    by Andrei Alexandrescu

本書最近好好地研究過了,這裡終於要介紹Andrei Alexandrescu了,他是Real公司的專案經理,是GP模板技術的天才,他的高深模板技術影響

了BOOST以及全世界的模板怪傑,本書中他介紹他的庫Loki,雖然庫十分激進沒有實際用途,當時展現的絢爛的特技令人歎服!同時本書是設計

模式用範型實現的經典展現,以及Policy設計模式在其中的極致應用,直接影響了BOOST的adaptor設計(7個Policy)甚至影響了標準庫的智慧

指標專案(雖然最後被否認了,當時絕對是完美的實現方法)

簡稱MCD。在閱讀MCD之前,建議先閱讀一下《C++ Template》。

  1. Thinking in C++ 《C++程式設計思想》
    by Bruce Eckel
    本書本人只是瞄了一眼,似乎第二本實用程式設計技術比較有用。
    這本書及其中文版傳言好壞都有,沒有認真看過,不做評價,如果確有興趣,不妨嘗試一下該書。

  2. C++必知必會
    by
    如同101一樣,當然也是權威的作品,只是沒有遇到好的天時而已。
    如果早一年,這本書將是重量級的,然而它被101和《Exceptional C++ Style》蓋過一頭。

  3. C++ Gotchas: Avoiding Common Problems in Coding and Design 《C++程式設計陷阱》
    by
    常規,曾經有許多人讓我去看此書,可惜一直沒有去看的精力,於是擱置許久,當時深刻了解此書中被引用內容的權威,好評也是不斷。
    這又是一本我未曾讀過,而且廣受好評的書。

  4. STL 原始碼剖析
    by 候捷
    最近剛剛看了電子版,少有的國人之作,內容方面還可以,只是一些候氏方言令人頭疼。
    這本書我剛到手,就被人”借”走,以至於到現在也沒有看過。看過這本書的朋友,可以給一個合適的評價。

其他高階:

  1. The Design and Evolution of C++ 《C++語方的設計和演化》
    by Bjarne Stroustrup
    又是BS老大的一本,值得一看
    簡稱D&E,內容並不艱深,Bjarne的書,僅此,就值得一讀。
    前段時間,互動網曾8塊一本(人民幣)賤賣此書,現在好像沒了。

如果有我一定屯個N本:)

  1. 《物件揭祕:Java、Eiffel和C++》
    by
    沒有看過,所以沒有資格作評論
    你對C++不滿嗎?這本書可以部分地幫你完成抱怨的目標。也許它還可以讓你不迷信C++。

  2. Imperfect C++ 《不完美的C++》
    by Matthew Wilson
    新書,本書介紹了許多新一代技術,以及C++很多有趣的技術,BS本來想把它加入C++ In Depths行列的,可惜最後說了一句:“如果本書再少

一些,也許我會考慮的。”就完了,但是無論如何本書都是一本好書,值得一看。

最後提一下C++ In Depths系列,這個是Bjarne Stroustrup發起的將一些比較有價值的有意義的好書歸成一類的選集。這裡是英文的介紹:
Accelerated C++: Practical Programming by Example, Andrew Koenig and Barbara E. Moo
Applied C++: Practical Techniques for Building Better Software, Philip Romanik and Amy Muntz
The Boost Graph Library: User Guide and Reference Manual, Jeremy G. Siek, Lie-Quan Lee, and Andrew Lumsdaine
C++ Coding Standards: 101 Rules, Guidelines, and Best Practices, Herb Sutter and Andrei Alexandrescu
C++ In-Depth Box Set, Bjarne Stroustrup, Andrei Alexandrescu, Andrew Koenig, Barbara E. Moo, Stanley B. Lippman, and Herb

Sutter
C++ Network Programming, Volume 1: Mastering Complexity with ACE and Patterns, Douglas C. Schmidt and Stephen D. Huston
C++ Network Programming, Volume 2: Systematic Reuse with ACE and Frameworks, Douglas C. Schmidt and Stephen D. Huston
C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond, David Abrahams and Aleksey Gurtovoy
Essential C++, Stanley B. Lippman
Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions, Herb Sutter
Exceptional C++ Style: 40 New Engineering Puzzles, Programming Problems, and Solutions, Herb Sutter
Modern C++ Design: Generic Programming and Design Patterns Applied, Andrei Alexandrescu
More Exceptional C++: 40 New Engineering Puzzles, Programming Problems, and Solutions, Herb Sutter
For more information, check out the series web site at

相關推薦

python學習大家庭 472309261 java學習交流532259952

c++程式設計教程 c++程式設計思想 c++大學教程 c++程式設計語言 資料結構演算法與應用c++語言描述 c++標準模板庫——自修教程與參考手冊 泛型程式設計與STL 深度探索c++物件模型 設計模式—可複用面向物件軟體的基

比較完善的學習流程方法和Java學習中越到的所有問題

lag 編程 算法 ron java學習 XML col add servlet Java是一門面向對象編程語言,Java語言具有封裝、繼承、多態三個特性,這三個特征又使得Java語言比其他編程語言的功能更加強大強大、用起來更加簡單。Java語言作為靜態面向對象編程語言的代

學習邊記錄,Java學習路線總結分享

  邊學習邊記錄,對於程式設計師來說真的是一個很好的學習習慣,下面是近期在Java學習時總結的一些技術知識點。   第一講,主要是Java環境變數的配置。搭建好環境才能幹活。要理解什麼是編譯、什麼是執行。編譯是javac.exe程式在負責;執行則由java.exe負責。編譯

最全java學習知識資料,Java學習心得分享

很多人想學習java的朋友在新手上路階段,教學視訊可以在市場上發現的不完美,所以我們特意準備了最java學習資料,好的學習資料齊全!在學習了材料的注意之後,可以編寫私人信件。這裡有一些原始碼和註釋與大家分享。學習資料可以加下Java學習裙:伍柒肆貳伍叄零柒伍小白的入門學習ja

思維導圖學習 | 第二篇:java學習基礎,讓java不再難懂【中篇】

配套Ximnd學習導圖下載地址 寫在最後 歡迎關注、喜歡、和點贊後續將推出更多的思維導圖學習文章,敬請期待。 歡迎關注我的微信公眾號獲取更多更全的學

思維導圖學習 | 第一篇:java學習基礎,讓java不再難懂【上篇】

配套Ximnd學習導圖下載地址 寫在最後 歡迎關注、喜歡、和點贊後續將推出更多的思維導圖學習文章,敬請期待。 歡迎關注我的微信公眾號獲取更多更全

希望能得到一些大神的指點,加QQ:249627436 java技術交流

本人學習java,1年多,對一些基本技術已經掌握。為了使自己能力提升建了一個QQ群:java交流群現有150人多為高校學生。希望能得到一些大牛的指點和思想的交流,如果不嫌棄小弟,請加盟吧,可以不用回答群裡新手的提問,希望大神們能提供一些好資料,或者自己的心得,筆記都行。非常

Java那點事 | 學習●思考●分享 | Java技術交流QQ:83753349

正常來說,對於順序結構,執行的順序是自上到下,也即1234。但是,由於指令重排的原因,因為不影響最終的結果,所以,實際執行的順序可能會變成3124或者1324。由於語句3和4沒有原子性的問題,語句3和語句4也可能會拆分成原子操作,再重排。——也就是說,對於非原子性的操作,在不影響最終結果的情況下,其拆分成的原

Java那點事 | 學習●思考●分享 | Java技術交流QQ:83753349】當你的才華還撐不起你的野心時,那你就應該靜下心來學習。豈能盡如人意,但求無愧我心; 努力不一定會成功,但是放棄一定會失敗; 好好學習,天天向上,不求與人相比,但求超越

當你的才華還撐不起你的野心時,那你就應該靜下心來學習。豈能盡如人意,但求無愧我心; 努力不一定會成功,但是放棄一定會失敗; 好好學習,天天向上,不求與人相比,但求超越自己; 知其然,還要知其所以然;...

Java後端技術微信交流!工作、學習、技術、資源等!期待你的加入!

《Java後端技術》專注Java相關技術:SSM、Spring全家桶、微服務、MySQL、MyCat、叢集、分散式、中介軟體、Linux、網路、多執行緒,偶爾講點運維Jenkins、Nexus、Docker、ELK,偶爾分享些技術乾貨,致力於Java全棧開發!

PythonJava學習選哪一個?

作為世界上使用範圍最廣的程式語言,Java難免總是被拿來跟Python比較,而且,在程式語言的各種對戰中,Python 與Java也是打得最熱烈的。 Java必須顯式宣告變數名,而動態型別的Python不需要宣告變數。 Python是一種語法簡單的功能強大的語言,能夠通過編

深度學習交流

大家好,我是展穹! 歡迎大家加入“深度學習交流群”,群內會經常分享一些深度學習相關的資料。 本群的宗旨:互相學習,共同進步!哈哈   宣告:群內所有資料都來源於網際網路,只供學習,不做任何商業使用,涉及任何法律問題與本群和本人無關,謝謝!如果您也有好的學習資料可以在群裡分享

小馬哥STM32四軸學習課程連線、資料分享、交流彙總

一、摩爾吧四軸開發21講目錄及連結: 二、DragonFly四軸部分視訊課程B站地址: 三、RoboFly四軸散件焊接參考視訊地址: 四、小馬哥STM32F103最小系統板開發入門: 五、Robo

快速學習Python基礎語法中與Java的不同之處

1、Python識別符號中與Java的不同 Python識別符號中以下劃線開頭的識別符號具有特殊意義。 以單下劃線開頭 _foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不能用 from xxx import * 而匯入; 以雙下劃線開頭的 __foo

PythonJava學習哪種語言好

學習Python和Java哪個好?這個問題困擾了很多IT從業者,這兩種開發語言,目前在網際網路上的需求量都比較大,就業薪資待遇也都挺好的,那麼,想從事IT程式設計工作選擇學習哪個好呢? Java是一門資深的程式語言,普及率極高,有著豐富的第三方庫,Java擁有最大的市場需求,從Web開發、網路開

個人學習記錄(openshift學習交流:642244924(本人已換組,可以和裡其他人交流))

從零學習雲端計算 剛入職雲端計算方向的工程師,負責將公司的paas雲平臺往kubernetes的架構上遷移,會在微博中詳細記錄學習kubernetes等知識的過程,以及在生產環境中,遷移雲平臺時碰到的一些問題和解決方案。

Qt、C++學習交流招管理員咯(主為一枚Qt程式開發人員)

群號: 302558294 Qt、C++學習交流群歡迎你。 本群每週更換一次管理員。 選拔條件: 1、積極為群友解決Qt、C++方面遇到的問題。 2、分享學習高質量的學習資料。 3、活躍度高,提高群

python的運算子(與java的對比學習

        與java相比,少了自增、自減運算子。即python中沒有,i++、++i/i--、--i的·寫法                    細節注意:and  和  or並不存在優先順序之分,程式是從左往右執行。            eg:在下面程式碼中:  

墮落 Java vs 新貴 Python,2018 年最應該學習哪一門程式語言?

點選上方“CSDN”,選擇“置頂公眾號”關鍵時刻,第一時間送達!2017 年,程式語言領域發生了

技術交流限時開放中~愛學習的請進!

為了方便大家學習程式設計,我們組了幾個技術交流群。你或許已是技術大佬,相信在你成長的路上也遇到過