回覆列表
  • 1 # Java大資料高階架構師

    《Java程式設計思想》

    這本書適合開發過一兩個專案,對java已經有一定的瞭解的人。

    這本書首先不是java的入門書,雖然這本書介紹了一部分語法,但是更多內容是java特性的講解,裡面的用例水平非常高,對於面向物件講解,介面,內部類,容器,多執行緒,I/O的講解很透徹同時又很深刻,他會告訴你,在什麼情況下你應該作何選擇。以及各種選擇的利弊。這本書不適合從頭看到尾,適合在迷惑不解的 時候,帶著疑問去翻,讓你的求知慾帶著你去看書,而不是給自己定一個Java程式設計思想的讀書計劃。

    《深入剖析Tomcat》

    試讀人群:做過兩三個專案,對面向物件設計有一定了解,設計模式似懂非懂,想好好看看什麼是面向介面程式設計,對serlet的載入,對映,及整個http請求處理流程感興趣,不能容忍自己的知識體系存在黑箱的人。認為Java後臺開發僅僅是CRUD的人。

    Tomcat大家都很熟悉了,不論我們做的課程設計的小專案,還是淘寶天貓等每天PV訪問量過億的大型網站都在用,你還敢瞧不起它嗎?還是認為入門的技術 不值一提嗎?

    你可能更換資料庫框架,mvc框架,容器,但是很少有人換掉Tomcat。為什麼,因為她是一個優秀的設計(幫你做了很多,但在可定製性方面不如Jetty)。

    這本書從一個簡單的socket B/S 程式入門,作者從頭編寫聯結器,處理器,請求(request),處理(response)開始講解tomcat的設計理念,中間講Tomcat4及5的原始碼,講解tomcat核心的設計 Container 四大容器 ,然後講解tomcat安全,許可權,以及配置檔案的讀取,java物件的管理 ,定製性Tomcat 專案管理的後臺(就是你訪問tomcat路徑的根路徑進入的管理網站)。這本書適合於,心無旁騖,沒有專案,沒有太多事的情況下,對照實際的原始碼,一行行的讀,明白處理流程,瞭解什麼時候是優秀的程式碼?擴充套件性,健壯性

    《深入理解Java虛擬機器》

    適度人群:想學習併發程式設計,反射,想了解JVM最佳化。閒著無聊,沒專案的人

    首先這本書可能有點枯燥,沒有什麼用,真的,對於你現在的實際專案沒有直接用處,但是,你要想在java方面研究得更深,不可避免,你需要對jvm及其最佳化,java的記憶體模型,java類的載入機制,位元組碼檔案到底是什麼,以及併發程式設計,Java效能最佳化等方面有所瞭解。,你需要好好讀這本書,可能比較枯燥,有點難,但是他值得你用心讀 。

    《設計模式-可複用軟體的設計》 GoF(《設計模式的藝術之道》劉偉)

    適讀人群:有過三四大小個專案經驗,想了解什麼是軟體,什麼是程式,什麼是面向物件,只有讀了這本書,你才知道除了演算法,效能,之外,我們還要為之奮鬥是擴 展性,究其原因是:軟體行業的梗,需求變更,可能專案初期的需求和專案開發後期的需求有天壤之便,但如何在設計階段就為需求的變動做好準備,那就是對變化 的部分抽離抽象,分層,分工,雖然提高了複雜度,但是後期我們可以輕鬆一點,如果前期不設計好,真的 一個專案可以在需求變化面前,徹底玩完。根本無法繼續開發。如果你還沒接觸到 需求變更,只能說你的客戶不太重視他的專案,或者客戶本身就是程式設計師自己。一個main函式一個人從頭寫到尾絕對不是軟體。

    作者從建立型,結構性,行為型三個方面詳細介紹了23種設計模式,字字珠璣,耐心的看,耐心的 理解,把這本書和Java程式設計思想放在一起,沒事就翻翻看,沒準哪一天你在寫程式,發現,如果 我這麼設計,後面的開發我可以非常輕鬆的。那時,你一定要感謝作者總結了這些設計模式。可能GOF的書距今不叫遙遠,設計案例比較陳舊,所以可以同時看《設計模式的藝術之道 》這本書同樣不錯,例子可能更容易理解一些。

    軟體行業的聖經之作,只要你做技術,你應該時常翻翻看。

    《JavaScript程式設計全解》(JavaScript高階程式設計)

    適讀人群: 學會基本的 javascript dom程式設計,jquery,做過兩三個專案,但是沒有系統的學習javascript,總是在為一些語法,或者莫名其妙的 錯誤煩惱的人,這本書絕對適合你,應為他就是寫給java程式設計師的Javasript書籍 。

    Java程式設計師進階,為什麼要談JavaScript,我個人不喜歡JavaScript,應該我找了半天錯,可能就是因為一個簡單的語法錯誤,還有就是隻能操作控制元件,我一直希望前端人員可以幫我做這些事,後來發現這幾乎不可能,JavaScript還得自己寫,可能以後工作之後,更得自己寫,所以我想系統學習下 script,後來這本書真的沒有讓我失望,這本書後面高階部分還沒來得及看,但是僅僅在講述JavaScript的語法特性,就有一種如沐春風的 感覺,良心之作 。

    有事沒事的可以看看。當然這本書並沒有側重於dom程式設計,可能我們做的更多是dom程式設計,所以我還推薦你可以看看JavaScript高階程式設計。我看我們前端美女帥哥 都在看這書,應該還不錯 ,就是有點厚,但是說明講的詳細,可以做工具書。

    《深入分析javaweb技術內幕》

    適讀人群:做過三四個專案,看過上面的 深入剖析Tomcat,深入理解Java虛擬機器,設計模式,使用過Spring,mybatis的讀者。

    這本書的水平真是很高,說實話,看這本書的時候,我幾乎流下了眼淚,我能感受到作者真的是用心在寫書,不是為了出版賺版權費,不是為了裝X,而是真的是希望自己當年吃過的苦,別人能少吃一點,別人可以學的更輕鬆。尤其是作者的細緻認真,用工匠精神來說,一點不為過,同時再加上當時看Tomcat原始碼時的感想,可以總結 一句話,一個優秀的程式設計師在每一個細節都精益求精。在他們的知識體系裡,永遠不能容忍一個小漏洞存在,在細節處著手,踏踏實實的寫好每一行程式碼。把每一個有疑問的點都在合適的時機解決掉。作者在細節上擊敗了我。

    同時不光在細節上,作者詳細講述了 Javaweb中 的技術方向,多得數不清,但是每一章你都感覺不到 作者的 疏漏與不足。博廣精專,這就是本書的作者 值得我們學習的

    本文目錄大概包括Java I/o ,位元組碼,編譯,jvm,tomcat,spring,ibatis,等等。

    《重構改善既有程式碼的設計》

    適讀人群:掙扎於需求劇烈變更,維護升級的孩子們。

    這本書與設計模式併成為軟體行業的兩本聖經,雖然我不這麼認為,但是毋庸置疑,當你看完這本書,之後,你會更關注你寫的 程式碼的的結構,這兩本書都是讓我們可以寫出可維護,可擴充套件,健壯性強的程式碼,這本書就是教你如何修改程式碼,如何修改 能夠引入更少的錯誤,同時更加容易維護。作者講述很多的技巧,實用性極強,但是如果 你寫的專案 變動不是很大,或者沒有一些修改程式碼的苦痛的經歷,可能體會不會很深,這是一本獨立性比較強的 書,看一看是絕對值得的。

    《作業系統設計 xinu方法》

    適讀人群:學習完作業系統課程,想深入瞭解下作業系統內部的細節,如何實現執行緒排程,核心態使用者態轉化到底是什麼,訊息迴圈,程序 管理,等等,你都可以看。

    這是一本用C語言寫的書,但是身為Java程式設計師,最起碼得會C語言,看了這本書有什麼好處呢,說實話,對Java的面向物件開發沒有什麼幫助,他的幫助僅僅是在於你對 作業系統的瞭解更加深刻,當你去看JVM的 時候,可能會輕鬆一點點,同時他也在告訴你,其實作業系統並沒有那麼高不可攀,你就可以從原始碼級別看懂作業系統。同時可能,我覺得當你編寫程式到一定級 別後,走上架構師之路,作業系統絕對是知識體系中不可避免的一個重要環節。現在可以打個基礎。這本書適合於作業系統課程上完一大半之後在讀。

    一點都不難,真的!

    《超越傳統的軟體開發-極限程式設計的幻想和真實》(《解析極限程式設計-擁抱變化》《人月神話》)

    這三本書都是軟體工程 方向的書籍,關注於如何構造高效開發流程。在這方面我懂得很少 ,我會找別人再來給大家完善這方面的 知識,但是這三本書肯定都不難,有過專案領導經驗 的人來看,收穫一定會更多,其他人隨便看看,你會收穫很多,例如 ,測試先行,結對程式設計,螺旋開發,迴圈迭代,不斷最佳化的理念。等等

    《Java程式效能最佳化》

    適讀人群:做專案 三四個以上,瞭解java記憶體模型,以及初步掌握多執行緒程式設計,再有就是速度狂們。

    這本書從一些程式設計技巧,效能最佳化的理念,以及多執行緒併發程式設計 的一些 設計模式入手,講解了如何找到專案效能的瓶頸,如何提升系統吞吐量,從細粒度,程式設計角度去思考這些問題,(而不是分散式處理),真的尤其是後面的多執行緒部 分,如沐春風,激起了我對併發 程式設計的興趣。

    《Java併發程式設計》(《java多執行緒程式設計的藝術》)

    適讀人群:想深入學習併發程式設計,對 jvm記憶體模型有了解(深入理解jvm虛擬機器內本書很重要) 速度狂 ,對java已經有了不錯的感覺,感覺 可以程式碼水平需要更上一層樓的人

    Java併發程式設計是Java併發包的作者寫的,java.util.concurrent 大名鼎鼎,很有名的,學習併發程式設計的聖經之作,但是不太適合入門,入門需要看看後面的java多執行緒程式設計的藝術,一行行的程式碼,一個個的小技巧,慢慢來,併發程式設計絕對是是否是高階程式設計師的一個評判標準。

    Java併發程式設計,你應該時常翻翻看 。

    《深入分析Spring 技術內幕》

    適讀人群:熟悉精通設計模式,對面向介面,物件程式設計特別有感覺的人。時間充裕

    這本書,讓我為之震顫,震顫的原因不是因為 這本書講解多麼細緻,清晰,而是Spring的開發團隊為什麼把Spring搞得這麼複雜,面對 一個個的UML圖,我真的是很捉急,表示看不懂,可能是我本人比較笨。但是要想讀懂這本書,還真需要長時間的閱讀,思考。但是

    正如那句話,當你感覺生活艱難的時候,可能你在拔一個大蘿蔔,當你真的透徹了Spring,你就不可限量了。國內,應該沒有比這本書更系統從原始碼級別詳細講解Spring的了。

    《EJB3.0 入門經典》

    適讀人群: 閒著沒事的人.

    這本書放在最後,不是因為他重要,而是因為這本書無關緊要,為什麼呢,因為現在的開發,可以不適用EJB,但是你瞭解他之後,你就明白了什麼是分散式程式,什麼是程式的分散式部署。同時你還會知道除了Spring容器還有一種容器叫做 EJB,而是還是J2ee的嫡長子,還會明白,為什麼在j2ee領域讓野孩子Spring搶了風光。當你學會對比學習兩個 框架的時候,可能你真的是一個 大神了。Spring和EJB就是可以對比的。SpringMVC和Struts,

    Hibernate和mybatis, 等等,只有學會對比,才會看得更加廣闊.但首先還是要踏實

    《架構探險,從零開始Javaweb框架》

    適讀人群:想寫框架,對反射,對集合比較熟悉的人;

    你 可以把這本書,當做自己設計框架的 入門書,可以看到一個框架的編寫是多麼的簡單,你應該也學會參與開源專案,這本書不難,但是需要用心去讀。需要 邊看邊敲程式碼。什麼是Aop,事務處理,mvc框架,等等等等,作者的編碼水平高,實在太高,同時講解的也很透徹

    《j2ee核心模式》

    適讀人群:閒著沒事,想開發框架的大神

    這是Sun公司出版的一本書,對於J2ee的 開發非常有指導性,裡面總結了一些非常實用經過實踐檢驗的設計思想,設計技巧,有很多你應用了但是你沒有注意到,例如,一個不好的實踐是控制層有太多的邏 輯程式碼,這種情況下,檢視層需求的變動很容易影響到控制層,而你如果利用好”傳輸物件“這個設計技巧,就可以把需求變化控制在業務處理層和檢視層,

    (傳輸物件正如其名,僅僅是一個容器,裡面載入了大家需要的各種資料)

    有很多你使用的框架應用了,你也沒有注意到,例如前端控制器模式

    正是這種模式,才能讓我們的控制層與Servlet解耦,我們藉助於這個前端控制器攔截請求,

    SpringMVC框架就是利用了前端控制器DispathcerServlet將請求對映到controller中。

    這本書後面還會介紹jsp中的一些優秀實踐,EJB的實踐,EJB這部分可以看看資料處理部分。

    但是可能沒有做過EJB專案的讀者,不會收穫太多。

    《高效能MySQL》(Mysql技術內幕-Innodb引擎)

    適度人群:熟練使用Sql,有一般資料庫設計經驗,對索引,mysql原理,及常用最佳化方法感興趣,以及有志於成為DBA的同學。

    談java還是離不開資料庫的,開發中會遇到很多資料庫相關問題,尤其是索引部分,這本書介紹的很是透徹,從資料型別,索引原理,聯合索引設計的陷阱,常用最佳化方法,等方面來談,都是可以直接應用到實際工作中的經驗。對於後面偏架構運維章節,可根據個人興趣工作需要而定。

    第二本書偏原理,能直接應用於工作的很少,但是讀完之後,還是讓人感覺思維煥然一新,可能感受一下mysql的設計,對於自己以後設計類似功能(事務實現,緩衝池實現,todo ,undo..,鎖.等)會有很大借鑑意義。

  • 中秋節和大豐收的關聯?
  • 鉛酸電池第一次用要放完電麼?