天天看點

個人的java web開發書單

以下是對一些讀過的書和一些買後随便翻了翻的書的個人感覺。都是java web開發的程式員可能接觸的書,其他的如設計/手機開發/其他語言的書就不寫了,因為自己隻做過java web開發,那些書沒什麼資格評判。

因為不是每本書都翻開确定一下再寫的,可能有張冠李戴或記憶錯誤的情況,如發現了請指正。

如有好書我這裡沒列舉到的,請補充。此書單将持續完善。

js書籍:

《Javascript權威指南》犀牛書

厚,唯一的頂尖著作,上冊的每個章節都将一個知識點深入挖掘講透,必看。下冊API無關緊要。

《Javascript進階程式設計》

厚,與犀牛書有很大重疊,但感覺各個方面都不如犀牛書。可以看犀牛書之後随便翻翻這本書,有的地方可做補充。

《Javascript精粹》蝴蝶書

薄,讓人喜歡javascript的一本書。

《Javascript DOM程式設計藝術》

薄,最佳入門書沒有之一,對新手來說,前兩本太厚讓人望而生畏心生恐懼,這本書是優選,豆瓣評分高達8.7。

css書籍:

首先入門還是w3school的教程。大部分作為非美工的程式員就夠用了。

看過幾本不錯的書但忘了名字,待補充。

《精通CSS進階WEB标準解決方案》

《CSS設計指南》

入門之後可以用來提高。

《CSS禅意花園》

非新手向,更适合已經熟悉之後尋找靈感和……欣賞藝術。

html的書籍:

……w3school的教程足夠了,講js和css的書裡都會講。

前端性能:

《建構高性能web站點》

《高性能網站建設指南》

類似的兩本薄書,都看過之後會覺得自己無敵了,不想看書YSlow的軍規其實也夠了,重要的是要知其是以然。

rest:

《REST實戰》

厚書,沒看呢,老外的很多理論書籍過于想當然和自我神化,不接地氣讓人不喜,講到後面靈活的地方還會議論。

《圖解HTTP》

倒是http協定的了解至關重要,有語義的東西不用白不用,method啦,狀态碼啦,但不要宗教般地摳,比如put和post誰增誰改啥的。

這本書萌萌哒。

前端架構:

《鋒利的jquery》

其實就是jqueryAPI的加強版,覺得jqueryAPI足夠的話就不用看這本了。

《jquery技術内幕》

與《struts2技術内幕》《spring技術内幕》一系列的好書,講源碼的。這三本書都值得一看。但注意“源碼無用論”和“源碼神聖論”都不可取。

《深入淺出extjs》

可能是extjs唯一的一本可讀的書。非常不喜歡這個架構的思想。html和css都喪失了權力一切由它來托管了,未免權力欲過于旺盛。

真正要用ext的話,官方demo和api是最好的選擇,尤其是demo。

《用AngularJS開發下一代web應用》

《單頁web應用 Javascript從前端到後端》

《Backbone.js實戰》

mv*架構大熱以來較熱的幾個架構,對這幾個架構都隻有摸索,感覺angularJs風險略大,有點像extjs的想當然,一切都要在它内部來,如果能解決當然省時省力,如果不能解決就糟了。但問題是千變萬化的。backbone較輕量,功能弱,風險低,功能弱與風險低從來都是共同出現。

另外還有requireJs,也應該研究研究,這些前端架構級架構都不熟。本能地覺得不切實際,但還是該研究研究再下結論。

傳統開發中使用的前端技術,毫無疑問jquery是槍王之王。

《Bootstrap使用者手冊》

《深入了解Bootstrap》

前者超薄,完全不需要,看Bootstrap官網即可(版本更新時中文官網可能跟最新版本對不上,推薦英文官網)。後者是好書,講應用也講源碼。

基于Bootstrap的前端CSS架構Metronic超酷,頁面常用的元件裡面都有,其實就是個最佳實踐的大整合大雜燴,裡面沒有的自己找Bootstrap插件就好。

Bootstrap的偉大在于作為一個腳手架,給各種js元件提供平台,隻要都是bootstrap版的插件,整合起來樣式一緻性一般沒什麼問題。

java基礎書籍:

《scjp考試指南》

無數次被人求推薦書籍,無數次說出這本書之後被鄙視:“我不是為了考證”。但這本書真不是隻能用來考證。

對j2se的講解,既簡約又精當,知識足夠,又不會把人吓走的書,當然是入門的不二之選。

《Thinking in Java》

java界的頂級圖書,每個章節都深入講一個點,可以通讀一遍,然後按需再翻具體章節強化。跟《Javascript權威指南》讀法是一樣的。

但初學者不适合讀這本書,已經無數人說過了。但從别的語言轉java的人可以直接讀這本書。

《Core Java》

評價很高,個人不喜歡,就像《Javascript進階程式設計》被《Javascript權威指南》全面壓制一樣,《Core Java》也活在《Thinking in Java》的陰影之下。

《Java解惑》

好玩的書,讓你喜歡“有趣的”java。

《深入了解Java虛拟機》

《深入java虛拟機》

知其然又知其是以然,java虛拟機的内部原理,了解了沒壞處。

《Effective Java》

最喜歡的書之一,箴言式的規谏,作者的經驗之談,告訴你怎樣寫出優雅的代碼。

java web基礎書籍:

《scwcd考試指南》

《Head First JSP & Servlet》

《scwcd考試指南》與《scjp考試指南》一系列,但品質不高。相比之下scwcd的官方推薦教材《Head First JSP & Servlet》(該系列中文版都譯為深入淺出xxx)更好。

這兩本書都是将jsp的标簽講的很透,但如果使用jstl和el,兩本書講的都稍嫌不足,需要另查資料。

java性能書籍:

《java程式性能優化》

《java性能優化權威指南》

《web性能測試實戰》

《零成本實作web性能測試——基于Apache Jmeter》

《Java并發程式設計實戰》

經驗型書籍,沒什麼好說。

因為我也就是粗粗看過。但知道都是好書。

java架構書籍:

《struts2技術内幕》

《spring技術内幕》

《Spring3.x企業應用開發實戰》

都來自iteye部落客的手筆,第1本和第3本尤為推薦。《strut2技術内幕》的哲學思辨之美讓我驚為天人,《Spring3.x企業應用開發實戰》的實用和接地氣也讓人愛不釋手,國内的程式員高手寫的書比起國外的官方/經典著作,更适合中國人閱讀。不要崇洋媚外。當然想看第一手資料那還是國外的好。

《Hibernate實戰》

Hibernate作者Gavin King的作品,夠權威吧。但個人也不喜歡Hibernate,這麼多年都沒能用純熟,類似對Extjs的不喜歡一樣,前者嘗試解決O/R的不比對,後者嘗試解決O/DOM的不比對,一切以OO為目标,強力扭轉乾坤,這屬于逆天行事,當然做的都很出色。但感覺像逆練《九陰真經》練出絕世武功,走錯的路,居然成績斐然,讓人贊歎你的強大,但不是說你成績斐然就不是錯而是對了。

Mybatis的好書籍沒發現過,而且已經有中文文檔了。

《深入淺出Hibernate》

《spring2.0技術手冊》

兩本經典的好書,有一點點古老了,前者用來Hibernate入門的話還是不二之選,另外滿江紅的中文文檔都非常棒。

至于java的優秀類庫基本都是開源的,到官網找demo/文檔/API足矣。類庫一般較小較輕,英文文檔硬看也能看下來。架構較重,中文講原理的書看了提綱挈領,否則容易陷入迷霧不能自拔。

類庫和架構的差別是什麼?答:控制反轉。

至于一些java技術就不贅述了,SpringSide本身就是個大目錄,沿着它給打開的窗戶們一樣樣探究吧。

設計模式書籍:

《Head First設計模式》

《設計模式之禅》

《java與模式》

《設計模式java中的應用》

……

設計模式的書沒有特别好的也沒有特别糟的,不同作者其實也沒有什麼發揮的餘地,都是講那些東西,是以都很像。

設計模式的要點是通讀,都了解了,在腦海中留存,以後寫程式适當的時候設計模式自然會蹦出來。

個人感覺最好用的,工廠單例原型疊代這些最簡單的不說了,門面調停者這些偏架構的也不說了,最好用的是:擴充卡,政策,模闆,另外組合、通路者、裝飾器等各有各的用。橋接一直沒有很好的了解。享元輕易用不上。代理spring的aop幾近完美不用自己玩。解釋器用的機會也不多。别的看情況使用。

《反模式》

介紹的是一些理論上不合理、但非常普及、能解決某些問題的“反模式”。

把“反模式”一錘子打死也不對,但不是非用不可的情況還是輕易不要用。

架構思想書籍:

《企業應用架構模式》

Martin Fowler的不朽著作,也是其人最好的一本書,十幾年前的書,牛到了其中的種種思想,現在看來都是理所當然了,可見其影響力和普及程度。

《Expert One-on-One J2EE Development without EJB》

《J2EE設計開發程式設計指南》

java界的巨人,Spring作者Rod Johnson的封王之作,這兩本書同時期出現的spring徹底改變了java世界的格局,用老爵爺的語氣說,将他媽的EJB從王座上拉了下來。

“水,善利萬物而不争,處衆人之所惡,故幾于道。”——《道德經》中的這句話,個人感覺可以用來贊頌Spring的偉大。

唯一的頂級架構,java界的萬王之王。

個人非常崇拜的SpringSide正是以Spring為核心,提供的最佳實踐的展示。功德無量。

《J2EE核心模式》

更早的書了,有空可以讀讀,不是特别必要。

《大型網站技術架構》

《軟體架構設計》

國人的書籍,講的是“架構”而不是“架構”了,前一本強烈推薦,淘寶系的書籍都很不錯。

資料庫書籍:

資料庫的思想,行列含義,各種範式什麼的,好了解。

oracle,mysql,sql server...等主流資料庫,書籍都太多了,而且沒有特别出彩的(怎麼出彩?)或者特别差勁的,随意挑選就可以。不買書網上查資料其實也沒問題。

當然這指的是開發人員使用的資料庫技術,更深的DBA技術我不了解,如果以後接觸到再補充。

《Sql反模式》

為領域模組化之後,畫E-R圖,然後建表,是自然而然的事,不需要書籍。

反模式的議論見上文,SQL中也有一些反模式,這本書做了介紹。

程式設計基礎書籍:

《java資料結構和算法》等資料結構、算法書籍

《編譯原理》

《算法導論》

《計算機程式的構造和解釋》

《程式設計珠玑》

《代碼大全》

等等……

不用一本本說了,基礎的東西幾十年也不會過時,認真讀了受用無窮。

可惜太過深入,書太厚,節奏太快,一直沒能細讀,有時間讀書也讀更“高層”的書去了,太可惜了。

網絡安全書籍:

《白帽子講web安全》

《Web前端黑客技術揭秘》

中國人寫的安全書籍,做網站的必看,尤其是仇恨值高的。

軟體工程類:

《人月神話》

70年代出的書到現在依然暢銷,永垂不朽的名作,程式員必讀。

《建構之法》

接地氣的著作,軟體開發的全景圖,不是高高在上的指導,而是娓娓道來手把手來教。

《靈活軟體開發 原則,模式與實踐》

個人看過的靈活類書籍中相對不錯的。個人認為靈活開發宣言背下來,靈活的價值觀記下來,按實際情況靈活運用就是了。有些靈活愛好者的宗教式狂熱特别吓人,簡直走火入魔,不可取。

《高效程式員的45個習慣:靈活開發修煉之道》

這45個習慣,無論靈活與否,都是應該具備的,應該說是“優雅的”“職業的”行為。

很明顯,有些公司的工作不“靈活”,但不代表程式員不能從這本書中受益。

《代碼整潔之道》

《重構——改善既有代碼的設計》

職業程式員有義務寫好自己的代碼,寫給接手代碼的人,更是寫給半年後的自己。

最基本的職業道德,不需要多說。

轉載位址:http://www.cnblogs.com/zidafone/p/4142614.html

繼續閱讀