Java書單
⑴ 零基礎學習java的書籍有哪些,請推薦
作為Java程序員來說,最痛苦的事情莫過於可以選擇的范圍太廣,可以讀的書太多,往往容易無所適從。我想就我自己讀過的技術書籍中挑選出來一些,按照學習的先後順序,推薦給大家,特別是那些想不斷提高自己技術水平的Java程序員們。
一、Java編程入門類
對於沒有Java編程經驗的程序員要入門,隨便讀什麼入門書籍都一樣,這個階段需要你快速的掌握Java基礎語法和基本用法,宗旨就是「囫圇吞棗不求甚解」,先對Java熟悉起來再說。用很短的時間快速過一遍Java語法,連懵帶猜多寫寫代碼,要「知其然」。
1、《Java編程思想》
在有了一定的Java編程經驗之後,你需要「知其所以然」了。這個時候《Java編程思想》是一本讓你知其所以然的好書,它對於基本的面向對象知識有比較清楚的交待,對Java基本語法,基本類庫有比較清楚的講解,可以幫你打一個良好的Java編程基礎。這本書的缺點是實在太厚,也比較羅嗦,不適合現代人快節奏學習,因此看這本書要懂得取捨,不是每章每節都值得一看的,挑重點的深入看就可以了。
2、《Agile Java》中文版
這本書是出版社送給我的,我一拿到就束之高閣,放在書櫃一頁都沒有翻過,但是前兩天整理書櫃的時候,拿出來一翻,竟然發現這絕對是一本好書!這本書一大特點是以單元測試和TDD來貫穿全書的,在教你Java各種重要的基礎知識的過程中,潛移默化的影響你的編程思維走向敏捷,走向TDD。另外這本書成書很新,以JDK5.0的語法為基礎講解,要學習JDK5.0的新語法也不錯。還有這本書對於內容取捨也非常得當,Java語言畢竟類庫龐大,可以講的內容太多,這本書選擇的內容以及內容的多寡都很得當,可以讓你以最少的時間掌握Java最重要的知識,順便培養出來優秀的編程思路,真是一本不可多得的好書。
二、Java編程進階類
打下一個良好的Java基礎,還需要更多的實踐經驗積累,我想沒有什麼捷徑。有兩本書值得你在編程生涯的這個階段閱讀,培養良好的編程習慣,提高你的代碼質量。
1、《重構 改善既有代碼的設計》
這本書名氣很大,不用多介紹,可以在閑暇的時候多翻翻,多和自己的實踐相互印證。這本書對你產生影響是潛移默化的。
2、《測試驅動開發 by Example》
本書最大特點是很薄,看起來沒有什麼負擔。你可以找一個周末的下午,一邊看,一邊照做,一個下午就把書看完,這本書的所有例子跑完了。這本書的作用是通過實戰讓你培養TDD的思路。
還有一些比較基礎的入門書籍推薦給你
《Head First java開發》java開發入門書籍
《Head First java開發》是本完整的面向對象(object-oriented,OO)程序設計和java開發的學習指導。此書是根據學習理論所設計的,讓你可以從學習程序語言的基礎開始一直到包括線程、網路與分布式程序等項目。最重要的,你會學會如何像個面向對象開發者一樣去思考。但如果你真地想要好好地學習java開發,你會需要《Head First java開發》。這本書可是Amazon編輯推薦的十大好書之一!強烈推薦學習此書,非常適合初學者入門。
《java開發從入門到精通》
《java開發從入門到精通》這本書主要針對java開發基礎,對於沒有學過java開發的人才說,是一個不錯的選擇。通過這本書,大家可以從零開始,慢慢來學習,而且實操很多,不會讓你看到最後出現只會理論的情況。
《Thinking in java開發》(中文名:《java開發編程思想》)
《java開發編程思想》可以說是最經典的java開發著作,是所有java開發程序員必備教科書。這本書不管是正在學習還是已經工作許多年的程序員,都可以從這本書中得到你想要的東西。這本書具有教材和工具書的作用,就像一本字典,想知道什麼都可以從中查詢。雖然這本書很好,但並不建議初學者學習,對於初學者難度較大。
《瘋狂java開發講義》
《瘋狂的講義》這本書比較適合自學者,內容比較項目化,實操方法很多,如果你想進行java開發的深入學習,不妨看看這本書。
《java開發核心技術》
這本書分為兩個部分,第一個部分講的是基礎知識,第二個部分講的是高級特性。由於內容非常有層次,所以非常適合自學的同學學習。
《java開發開發實戰經典》
這本書比較適合自學者學習,裡面有很多小案例,可以邊學邊練,鞏固知識。
PS:溫馨提示,光看不練假把式,跟著視頻教程練項目也是必不可少的!相關教程指路B站尚學堂官方號!都是免費滴!
⑵ Java書籍推薦有哪些
Java的好書推薦
第一部分:Java語言篇
1.《Java編程規范》 適合對象:初級、中級
介紹:這本書的作者是被譽為Java之父的James Gosling,入門者推薦閱讀,對基礎的講解很不錯。
2.《Java編程思想》 適合對象:初級、中級
介紹:豆瓣給出了9.1的評分,全球程序員廣泛贊譽。有人說這本書不適合初學者,不過小編認為作者並沒有對讀者已有的知識經驗有過多要求,只是要求讀者需要知道基本的程序語言。作者以通俗易懂及小而直接的示例解釋了一個個晦澀抽象的概念,需要花時間細細研讀。
3.《Java核心技術:卷I基礎知識》 適合對象:初級、中級
介紹:官方機構圖書,備一本總是沒錯的。這本書比較全面也通俗易懂。可以當字典的功能來用,學習入門必備。
4.《Java數據結構和演算法》 適合對象:初級、中級、高級
介紹:這本書目前基本斷貨,足以說明搶手程度。作者主要使用Java語言描述了我們常用的數據結構,值得一看。
5.《Java與模式》 適合對象:中級、高級
介紹:難得一見的國人寫的Java好書。主要講解設計原則以及最為常見的設計模式的實用教材。這本書出現的比較早,是初級到中高級必讀的圖書之一。
6.《SCJP學習指南》 適合對象:初級、中級
介紹:官方考試的必備圖書,對檢驗自己的Java學習情況很有幫助。這本書特別適合學生閱讀,這本書理解透了,找工作面試Java題目不會有任何問題。一些工作多年的工程師都會在里邊遇到一些不會做的題目。
第二部分:中級進階篇
1.《重構:改善既有代碼的設計》 適合對象:中級、高級
介紹:清晰揭示了重構的過程,解釋了重構的原理和最佳實踐方式,並給出了何時以及何地應該開始挖掘代碼以及改善。大師的傑作,讓你明白軟體是一步步改進的,不是一蹴而就的。
2.《XML入門經典》 適合對象:初級、中級、高級
介紹:很多人覺得沒必要買XML書籍,不過我還是覺得推薦一本給你作為工具書,而且看本書可以使得你對XML方方面面有個了解。裡面不少東西還是用到的。
3.《jQuery基礎教程》 適合對象:初級、中級、高級
介紹:從這個開始學習jQuery才是根本,不然以後遇到的很多奇怪問題不知所以然。jQuery個人感覺已經成為目前的javascript標准庫了,插件無數,大大簡化了前端工作。
4.《JavaScript權威指南》 適合對象:初級、中級、高級
介紹:一本從全新視角和層次來介紹JavaScript的參考書,填補了市場的空白。是學習js的必備參考工具書之一。
5.《代碼整潔之道》 適合對象:中級、高級
介紹:講述了一系列行之有效的整潔代碼操作實踐。軟體工程的理想編碼是無數人編出來的代碼像一個人寫的,這本書當作規范就不錯。
第三部分:高級篇
1.《Enterprise JavaBeans 3.0中文版》適合對象:中級,高級
介紹:EJB技術在大型系統中使用,主要有銀行等金融機構。是開發分布式程序的選項之一,不過我不喜歡,其實銀行使用的也不怎麼的。結合JavaEE容器使用,開源的有JBoss,商用的有IBM和Oracle支持。
2.《Java並發編程實踐》 適合對象:中級、高級
介紹:這本書名為《Java並發編程實踐》有些抹殺了它的價值,其中並非只講述了Java的多線程設施,對一般的並發編程的rationale也有相當透徹的闡述。市面上並發編程的書比較少,這一本推薦閱讀。
3.《Hadoop權威指南》 適合對象:中級、高級
介紹:雲計算必備圖書。作為分布式計算的工具,Hadoop目前可以說是市場上唯一成熟的產品,而且大家也都向其看齊。而起雲計算炙手可熱,你搞明白這本書就大概明白了什麼是雲以及怎麼做雲。
4.《Java消息服務》 適合對象:中級、高級
介紹:深入淺出地講解了JMS1.1規范的底層技術、Java類和介面、編程模型及其不同實現等Java消息服務(JMS)和消息傳送機制關鍵技術。講解簡單明了,偏向於如何使用以及設計的一些原則。排版相當不錯。
來源網路老炮java 整理 侵權聯系
⑶ Java 後端有什麼書籍推薦嘛
1. 操作系統與網路的書
《Linux內核設計與實現 第3版》
Robert Love用最薄的篇幅,順暢的文字將Linux內核主要的演算法講清楚了,《深入理解Linux內核》,《深入Linux內核架構》之類厚厚的全是代碼,不是專門的內核程序員看這本足夠了。
《Linux系統編程 第2版》
繼續是Robert Love,比起APUE也是以薄見長,專門針對重要的系統調用講解。
《性能之巔》
操作系統的性能調優、監控、工具和方法論,看這本就夠了,已經足夠厚,可能是書單里最厚的一本。
《TCP/IP詳解 卷1:協議》
這么多年過去了,TCP的書好像主要還是只有這一本,有點舊了,看了也還是半懂不懂的。後人在2011年寫了第二版,機械工業正在翻譯。
《WireShark網路分析就這么簡單》和 《WireShark網路分析的藝術》 new!
多少人,是看了這兩本輕松又實戰的書,才真正理解TCP的細節。
PS:《UNIX環境高級編程》和《UNIX網路編程》,APUE和UNP更多作為一本超厚工具書存在。《Unix 編程藝術》,扯的都是閑篇,厚厚的一本其實略讀一下就行。 《現代操作系統 第3版》如果看LKD未盡興,可以回頭看看這本基礎概念,感覺比那型老本枯燥的《操作系統概念》(恐龍書)讀起來舒服。
《TCP/IP指南》 前面wireshark書作者的推薦,網上有英文免費版,然後有中文版的卷1和卷2,但可能那麼多章節那麼厚你只關心TCP和HTTP兩部分。《HTTP權威指南》,同樣是自己從厚厚的目錄里挑選感興趣的章節來看。另外,那些日本韓國人寫的《圖解XXX》感覺都不喜歡,真的不行。
2. 演算法的書
《數據結構與演算法分析-Java語言描述 第3版》
夠薄,數據結構與演算法分析的點基本都涵蓋了,而且喜歡它的示例代碼是Java寫的,新出了第3版。
《演算法 第4版》
可與上一本對比著讀,厚一些,也多些圖,但知識點沒上面的全,也是Java的。
PS: 《數學之美》、《編程珠璣》,都是專欄文章,講得並不系統,可以當興趣讀物來看。
《演算法設計與分析基礎 第3版》數學系偏愛無比枯燥很多公式的卜銷升《演算法導論》, 計算機系喜歡這本實用主義的典型。
3. 架構設計的書
《軟體系統架構:使用視點和視角與利益相關者合作 第2版》
也是教斗凳科書,最難得的是,這本老書在十年後的去年升級了第二版,所以感覺鮮活了好多,也許是最鮮活的一本架構書。
《恰如其分的軟體架構 – 風險驅動的設計方法》
由於人類與生俱來的惰性,計算機原本科學的、精準的設計方式,有了敏捷的借口之後就很難再維持了。本書就是在這種背景下,提出由風險來決定設計的度。除了開始的風險驅動部分,其餘部分就是規規矩矩標標准準的架構師教科書。
《發布!軟體的設計與部署 – Release It!: Design and Deploy Proction-Ready Software 》
關於高可靠性的軟體,學校里不會教,出來社會卻要面對的那部分,英文的原標題更清晰。
《大型網站技術架構:核心原理與案例分析》
淘寶出品,大型互聯網站的科普入門書。
《高擴展性網站的50條原則》 new!
同是入門級讀物,如果還有個高可用50條原則,那就齊了。
《微服務設計》 new!
那麼多微服務的書,還是這本比較不像賺快錢的。
《大數據日知錄》
前幾年參加各種技術會議,CAP,最終一致性,RWN,向量時鍾,Paxos,一致性哈希,Gossip什麼的能灌你一耳朵。而現在,你只要在家安安靜靜的看書就夠了。不過這個領域發展太快,又一年過去了,期望它可以持續出新版。