1. 程式人生 > >Java學習之路(轉) Java學習之路(書籍推薦)

Java學習之路(轉) Java學習之路(書籍推薦)

Java學習之路(書籍推薦)

 

一、基礎類

1、《Thinking in java》(閱讀2遍),入門第一位是建立正確的概念

2、《Core Java》這本書更貼近實踐,更多API的介紹,同樣,更新也更頻繁。(可以選重點章節讀一下)

二、進階類

1、《Effective Java》(閱讀1遍),在熟悉語法、API之後,你需要知道最佳實踐和陷阱,沒有比這本更好的。

2、《深入Java虛擬機器》(閱讀2遍),翻譯一般,但不可不讀,最好結合最新的JVM規範來讀。

3、《Java Puzzlers》,通過謎題介紹一些你可能沒有注意到的邊角料,作為趣味讀物也不錯

三、特定領域

1、併發程式設計(程序、執行緒、協程,併發模式):

(1)《Java Concurrency in Practic》(閱讀1遍),併發領域必讀經典。

(2)《Java併發程式設計:設計原則與模式》,同樣是Doug lea的作品。

(3)《java threads》,入門讀物。

(4)《Programming Concurrency on the JVM:Mastering Synchronization, STM, and Actors》

(5)《多處理器程式設計的藝術》(閱讀1遍)

2、集合程式設計(資料結構和演算法):

Collection Framworks/STL,資料結構和演算法:《演算法概論》 《演算法導論》 《計算機程式設計藝術》

《Java Generics and Collections》

3、網路程式設計:

(1) O’Reilly的《Java nio》,很多人都推薦,我個人覺的一般,基本上只是個API更詳細的說明文件,O’reilly的java系列很多都是這樣。

(2)我更推薦這本《Fundamental networking in java》,由淺入深教你怎麼做java網路程式設計,並且介紹很多背景知識,甚至介紹了各種最佳實踐、網路程式設計模型以及Java socket在不同平臺之間的差異等等。

(3) Netty

4、web程式設計

(1) Servlet規範

(2) JSP規範

(3) JavaBean規範

(4) JMS/Java Naming and Directory Interface(JNDI)/JDBC/Java Transaction API(JTA)

(5) Struct2 + Spring + ibatis/hibernate/jdbc/

四、模式與設計

1架構模式、

1、《分析模式——可複用物件模型》

2、《面向模式的軟體體系結構》,國內貌似翻譯了5卷,絕對經典,可惜翻譯較差。

3、《企業應用架構模式》(2遍)

4、《分散式架構:選一本書》

2設計模式

1、《設計模式》,GOF的經典。

2、《設計模式精解》(1遍),應該有最新版,個人認為更適合入門。

3、《Head first設計模式》,更輕鬆的入門讀物。

4、《Java與模式》

3程式碼模式/慣例/編碼規範

1、《程式碼大全》(1遍)

4 重構

1、《重構——改善既有程式碼設計》(1遍),想寫好程式碼必讀。

2、《重構與模式》

五、方法論/軟體工程

1、《敏捷軟體開發》

2、《測試驅動開發》(1遍),你不一定要TDD,但是你一定要學會做單元測試。

3、《Agile Java》,也可以作為java入門讀物。

4、《快速軟體開發》

5、《面向物件分析與設計》,OO設計必讀。

6、《Unix程式設計藝術》(1遍),開啟你的眼界。

六、Java之外

1、 《深入理解計算機系統》(0.8遍)

2、 《演算法導論》閱讀(0.9遍)基本部分閱讀,其它參考閱讀

3、   OS部分:《深入Linux核心架構》《Linux核心設計與實現》《Linux核心分析與作業系統設計》 《Linux/UNIX系統程式設計手冊》

4、 《TCP/IP詳解》(0.8遍)(三卷)、《UNlX環境高階程式設計》《unix網路程式設計》(兩卷),學習網路程式設計必讀書。

5、 《C++網路程式設計》上下兩卷,介紹ACE的,但是其中對各種模式運用的介紹非常值的一讀。

6、 《計算機程式的構造與解釋》,必讀

7、 《編譯原理》龍書,最新版用java解釋,我沒有讀完,順便提下。

8、 《資料庫概念》

9、 《Joel說軟體》程式設計文化

10、《人月神話》、《人件》(閱讀1遍)

11、《卓有成效的程式設計師》(閱讀1遍),給我很大啟發的一本書。

12、《程式設計師修煉之道》(閱讀1遍)

參考: 
我的Java學習推薦書目 http://jm-blog.aliapp.com/?p=522
Java開發實用權威書籍集合 http://www.iteye.com/news/21791/
學習JVM的References  http://jm-blog.aliapp.com/?p=525

哪本書適合推薦給Java初學者? http://www.zhihu.com/question/19848946?rf=19752221

一、基礎類

1、《Thinking in java》(閱讀2遍),入門第一位是建立正確的概念

2、《Core Java》這本書更貼近實踐,更多API的介紹,同樣,更新也更頻繁。(可以選重點章節讀一下)

二、進階類

1、《Effective Java》(閱讀1遍),在熟悉語法、API之後,你需要知道最佳實踐和陷阱,沒有比這本更好的。

2、《深入Java虛擬機器》(閱讀2遍),翻譯一般,但不可不讀,最好結合最新的JVM規範來讀。

3、《Java Puzzlers》,通過謎題介紹一些你可能沒有注意到的邊角料,作為趣味讀物也不錯

三、特定領域

1、併發程式設計(程序、執行緒、協程,併發模式):

(1)《Java Concurrency in Practic》(閱讀1遍),併發領域必讀經典。

(2)《Java併發程式設計:設計原則與模式》,同樣是Doug lea的作品。

(3)《java threads》,入門讀物。

(4)《Programming Concurrency on the JVM:Mastering Synchronization, STM, and Actors》

(5)《多處理器程式設計的藝術》(閱讀1遍)

2、集合程式設計(資料結構和演算法):

Collection Framworks/STL,資料結構和演算法:《演算法概論》 《演算法導論》 《計算機程式設計藝術》

《Java Generics and Collections》

3、網路程式設計:

(1) O’Reilly的《Java nio》,很多人都推薦,我個人覺的一般,基本上只是個API更詳細的說明文件,O’reilly的java系列很多都是這樣。

(2)我更推薦這本《Fundamental networking in java》,由淺入深教你怎麼做java網路程式設計,並且介紹很多背景知識,甚至介紹了各種最佳實踐、網路程式設計模型以及Java socket在不同平臺之間的差異等等。

(3) Netty

4、web程式設計

(1) Servlet規範

(2) JSP規範

(3) JavaBean規範

(4) JMS/Java Naming and Directory Interface(JNDI)/JDBC/Java Transaction API(JTA)

(5) Struct2 + Spring + ibatis/hibernate/jdbc/

四、模式與設計

1架構模式、

1、《分析模式——可複用物件模型》

2、《面向模式的軟體體系結構》,國內貌似翻譯了5卷,絕對經典,可惜翻譯較差。

3、《企業應用架構模式》(2遍)

4、《分散式架構:選一本書》

2設計模式

1、《設計模式》,GOF的經典。

2、《設計模式精解》(1遍),應該有最新版,個人認為更適合入門。

3、《Head first設計模式》,更輕鬆的入門讀物。

4、《Java與模式》

3程式碼模式/慣例/編碼規範

1、《程式碼大全》(1遍)

4 重構

1、《重構——改善既有程式碼設計》(1遍),想寫好程式碼必讀。

2、《重構與模式》

五、方法論/軟體工程

1、《敏捷軟體開發》

2、《測試驅動開發》(1遍),你不一定要TDD,但是你一定要學會做單元測試。

3、《Agile Java》,也可以作為java入門讀物。

4、《快速軟體開發》

5、《面向物件分析與設計》,OO設計必讀。

6、《Unix程式設計藝術》(1遍),開啟你的眼界。

六、Java之外

1、 《深入理解計算機系統》(0.8遍)

2、 《演算法導論》閱讀(0.9遍)基本部分閱讀,其它參考閱讀

3、   OS部分:《深入Linux核心架構》《Linux核心設計與實現》《Linux核心分析與作業系統設計》 《Linux/UNIX系統程式設計手冊》

4、 《TCP/IP詳解》(0.8遍)(三卷)、《UNlX環境高階程式設計》《unix網路程式設計》(兩卷),學習網路程式設計必讀書。

5、 《C++網路程式設計》上下兩卷,介紹ACE的,但是其中對各種模式運用的介紹非常值的一讀。

6、 《計算機程式的構造與解釋》,必讀

7、 《編譯原理》龍書,最新版用java解釋,我沒有讀完,順便提下。

8、 《資料庫概念》

9、 《Joel說軟體》程式設計文化

10、《人月神話》、《人件》(閱讀1遍)

11、《卓有成效的程式設計師》(閱讀1遍),給我很大啟發的一本書。

12、《程式設計師修煉之道》(閱讀1遍)

參考: 
我的Java學習推薦書目 http://jm-blog.aliapp.com/?p=522
Java開發實用權威書籍集合 http://www.iteye.com/news/21791/
學習JVM的References  http://jm-blog.aliapp.com/?p=525

哪本書適合推薦給Java初學者? http://www.zhihu.com/question/19848946?rf=19752221