? ? ? 我自己認為我是一個不大喜歡看書的人, 相對于書,我可能跟喜歡看視頻和同高手一起討論交流。 但是, 真正靜下心來, 想著這么多年來,對我影響很大的一些書, 也能想到一些。 索性, 總結一下, 就當是是為了那過去的歲月來一次簡單的重新來過。
? ? 我是上大學的時候, 因為學的專業是軟件工程, 所以才開始接觸計算機,接觸到編程的。 當時在學校里面, 學習了很多有關計算機的課程, 站在現在工作了三年的角度來看, 當時的專業課程中, 應當說大部分都是都用的。伴隨著這些課程, 其實相對應的教材也是很經典的。
## ? 1. ? 《數據結構》(C語言版) 嚴蔚敏 編著 ? 清華大學出版
評論: ?這本書算是編程基礎中的基礎, 里面將計算機中最常見的數據結構,從鏈表、棧、隊列、數組, 到樹、圖、哈希表等, 都進行了詳細的講述。 當時學習的時候, 可能比較機械, 因為是大二開始學的, 所以對計算機的操作系統、編譯器等知道的不多,所以理解不深。 ?后來, 尤其是參加工作后, 去研究LInux系統的內核, 內核中的各種實現, 其基礎的數據結構,都來源于當年學習的那本書。
## 2. 《編譯原理》 ?劉堅著 ? 西安電子科技大學出版
評論: ?編譯原理, 在當時看來, 是計算機中比較難的課程了。 各種抽象的概念,比如自動機、有向圖等, 當時學習的時候那是一個吃力。 隨著在編程方面的經驗越來越多, 到現在工作了 , 感覺如果要想更加深入理解程序,理解計算機的工作原理, 就不得不必須知道點 有關編譯的知識了。 了解了編譯, 讓我們寫代碼時更加深層次的考慮,寫出高效高質量的程序來。
## 3. 《C++程序設計語言》(影印版) ?高等教育出版社
評論: ?這本書是當年學習C++的教材, 英文影印版的。 當時我們學校的學院院長,號稱將這本書讀了17遍。 雖然是英文的, 但是讀起來還是比較輕松的。 我個人曾經在學校里面也讀過, 確實是C++ 的經典教材。 這本教材的經典在于, 會將作者(C++之父)的心得寫在每個章節后面,提示如何做更好。?
## 4. ?《C++ ?Primer》 ?
評論: 這本書也是經典了, C++學習的入門級別的作品, 初學者,對面向對象理解不深刻的同學,可以從中學到很多。 現在都不知道出第幾版了
5. ? 《C語言程序設計》 ? 唐浩強 ? ? 清華大學出版社
評論: ?說了《C++ Primer》 , 就不得不說 這本書。 這本書是我認為的C語言,甚至是高級程序設計的語言最最入門級的書籍。 雖然有些老師說這本書寫的太注重語法了,不太重視程序設計的理念。 但是, 從我的角度看, 作為入門級的學習,還是可以的。 不過, 不能僵化的使用這本書, 讀的太深入了,會導致“走火入魔”, 也就是老師談到的真正忘了程序設計的精髓了。
6. ?《Java編程思想》 ?
評論: ?這本書因為多年不搞Java , 幾乎都要遺忘了。 一直在想, 當年面向對象的學習對我影響最大的是哪本書, 應該就是這本了。Java 是純面向對象的, 各種面向對象的語法支持。 ?這本書最大的收獲, 是結合Java的語言特性, 詳細解答了面向對象的編程思想。 對于學習和理解面向對象, 是再合適不過了。
? ? ?以上幾本書, 是在我上學的時候學習的, 現在還保存的幾本書, ?平時也會翻一翻。 ?后來找工作的時候, 又看了一本《程序員面試寶典》(第二版) , 這本書應該說總結的也還不錯, 既有關于工作方面的經驗之談, 也有關于技術面試的常見題型, 這些題目會讓我們學習到一些書本上沒有的東西, ?對要找工作的人確實起到一定的幫助。
? ?工作三年多了, 看的技術類別的書籍不多, 斷斷續續的看了一些, 有一些經典書籍,也是值得大家讀一讀的。
7. ? 《代碼大全2》 ? 電子工業出版社
評論: ?這本書重點講述了有關如何寫好代碼, 寫出好代碼要注意什么, 怎么樣才能寫好代碼。 ?總這本書中, 可以收獲關于代碼的編程規范要求, 寫出高質量代碼的必要意識等。 ? 在學校里面, 或許要求只要寫出代碼來就行。 雖然講過一些規范,但是很少。 但是工作之后, 代碼寫的不規范,以后維護起來就很痛苦了。 如果你想讓自己的代碼更上一個臺階, 推薦讀一讀這本書,并且按照書里面說的去做, 我想一定會有質的變化。
8. ?《敏捷軟件開發 ?原則、模式和實踐》 ?鄧輝譯 ? ? 清華大學出版社
評論: ?這本書是我在敏捷當SM的時, 重點學習的。 雖然過去一年多了,但是對這本書中的內容,仍然記憶猶新。 ?這本書好像是分為三個部分, 首先還是談到了敏捷的價值觀、原則等有關敏捷開發的內容。 其次是介紹了軟件設計的SOLID的原則, 這幾個原則相對于《設計模式》 那本書中談到的, 更加具有實用性和廣泛性。 后來,這些原則指導著我對軟件的設計,受益匪淺。 最后一部分, 談到了一些具體的實踐, 這些實踐也是經驗之談, ?能夠讓我們在日常開發中少走很多彎路。
9. ? 《 設計模式:可復用面向對象的軟件基礎》 ? 機械工業出版社
評論: ?這本書號稱是軟件設計中的經典, 如果要學設計,就必須得看這本設計模式。 ?不過我個人感覺經典之作,可能對于初學者來說, 入門有點難。 因為初學者對面向對象的偉大思想,還沒有理解到這一層次,甚至對抽象、多態、接口編程等這些基本的概念,還沒有理解透徹。 ?我覺得這本書可以先看看, 然后等有了一定的面向對象設計經驗, 再回過頭看, 感覺就不一樣了。 學設計模式, ?最好的方法還是學習、實踐、再學習,再實踐。 只有實踐了, 才能對面向對象的設計模式理解的更加透徹。 不過話說回來, 也不能過分設計,不能為了設計而設計。
10. ? ?《高質量程序設計》 ?林銳博士著
評論: 這本書也算是C/C++的經典之作吧。 ?這本書的特點是語言并不是一般技術書籍的枯燥, 而是比較口語化且帶有一些幽默。 同時, 將程序設計中最容易犯的常見錯誤,都進行了講解。 作為代碼的質量提升方面, 和《代碼大全2》 一起,算是同類型的書籍。 關于在代碼提升方面, 還有比如《C和指針》、《C專家編程》、《C缺陷和陷阱》……?
11. ?《重構: 改善既有代碼的設計》 ?人民郵電出版社
評論: ?這本書算是代碼重構方面的經典中的經典了。 講述了各種關于重構方面的技巧,重構的意識等。 這本書我沒有完全讀完, ?因為一些內容和代碼大全中也有。?
這些年, 除了上述列舉的我認為對我的工作和技術有幫助的書籍外, 還閱讀過如下:
1. 《 測試驅動的嵌入式C語言開發》 ?-----這本書重點講述了采用TDD的方式進行嵌入式C語言開發, 教你一些實踐經驗,比如軟件模擬硬件邏輯來打樁等
2. ?《C嵌入式編程設計模式》 ? ? -----------這本書重點講述了嵌入式編程方面的C語言常用設計模式,屬于過程式語言的實踐經驗。 對于常常寫驅動程序的同學, 這本書值得一讀。
3. ?《深入理解Linux網絡技術內幕》 ?--------這本書 對Linux 網絡編程方面 有深入的講解,尤其是好的設計
4. ?《深入理解LInux內核》 ? ?-
5. ?《 解析極限編程——擁抱變化》 ? ------XP如何實踐, 這本書可以借鑒
除了這些外, ?我更喜歡從網絡上來獲取相關的資料, 尤其是CSDN的各位專家的博客, 有關于技術的、有關于程序人生的、有關于生活的…… 總之, 你能想到的, 這些這里都有, 給我以指導, 其經典不亞于上述這些書籍。?
從2004年上學開始接觸計算機開始, 從第一個C語言的Hello World 程序, 到現在獨立完成某個大型項目的模塊功能; 從當時郵件都不知道怎么發的菜鳥, 到現在可以熟練的操作控制計算機, 雖稱不上專家, 但是也還湊合; 這些年過去了, 一直以來,都是這些書籍, 讓我一點點的進步。 書, 是我永遠的朋友 !
- 前言
- 讀《Linux內核設計與實現》我想到了這些書
- 夢想的啟航,那些年,那些書
- C++和Windows平臺的一些書籍
- java一路走來
- 《Android入門之旅》
- 致我們終將逝去的青春-PHP篇
- 多讀書,讀好書
- 這些年,那些我們一起讀過的代碼
- C++碼農要讀的經典
- 閱讀IT類圖書,能夠收獲什么
- 讀完《大數據時代》的一點兒心得
- 這些日子我讀過的《java編程思想》
- 關于C,看過的一些書
- Android系統深度游
- 《《內存和性能優化》》給我帶來的!
- 「書評」SAP內存計算——HANA
- 書籍記錄了我技術的成長歷程
- 那一年讀過的技術經典書
- 【時間規劃】C/C++發展之路--讀書
- UNIX 環境高級編程之我見
- 游戲開發圖書推薦--我讀過的技術經典圖書
- 自己動手寫操作系統-經典書籍
- 游戲升級之路
- 《SQL Server 2005開發技術大全》分享一本書
- 書,永遠的朋友
- 學生時代的書單
- 追求技術之路 - 那些陪伴我的書籍
- 經典書籍--好書很多,重要的是有個目標,有個規劃
- android系統深入開發
- 這些年一路相伴的書
- 從零開始學
- 這些年我讀過的技術經典圖書(附電子版下載地址)
- 書--益友--從不孤單
- 給自己時間沉淀下來
- 那些支持我學習與工作的良師益友
- 文章千古事、得失寸心知
- 從Linux 驅動到游戲可視化轉行要讀的書
- 那些年,我們一起讀過的《JAVA與模式》
- 往事不堪回首 -- 多讀書
- 我程序人生的啟蒙書
- 一個不喜歡讀書的Javaer的讀書單
- 一本書,讓我走上編程之路
- 程序員讀書的五重天
- 大學那會兒,我讀過的技術經典圖書
- C語言高手進階的三碟小菜和一盤大餐