工作小驛

          Ninja!

          BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
            103 Posts :: 0 Stories :: 36 Comments :: 0 Trackbacks

          JavaEye (http://www.javaeye.com)

          作為Java程序員來說,最痛苦的事情莫過于可以選擇的范圍太廣,可以讀的書太多,往往容易無所適從。我想就我自己讀過的技術(shù)書籍中挑選出來一些,按照學(xué)習(xí)的先后順序,推薦給大家,特別是那些想不斷提高自己技術(shù)水平的Java程序員們。

          一、Java編程入門類

          對于沒有Java編程經(jīng)驗(yàn)的程序員要入門,隨便讀什么入門書籍都一樣,這個(gè)階段需要你快速的掌握J(rèn)ava基礎(chǔ)語法和基本用法,宗旨就是“囫圇吞棗不求甚解”,先對Java熟悉起來再說。用很短的時(shí)間快速過一遍Java語法,連懵帶猜多寫寫代碼,要“知其然”。

          1、《Java編程思想》

          在有了一定的Java編程經(jīng)驗(yàn)之后,你需要“知其所以然”了。這個(gè)時(shí)候《Java編程思想》是一本讓你知其所以然的好書,它對于基本的面向?qū)ο笾R有比較清楚的交待,對Java基本語法,基本類庫有比較清楚的講解,可以幫你打一個(gè)良好的Java編程基礎(chǔ)。這本書的缺點(diǎn)是實(shí)在太厚,也比較羅嗦,不適合現(xiàn)代人快節(jié)奏學(xué)習(xí),因此看這本書要懂得取舍,不是每章每節(jié)都值得一看的,挑重點(diǎn)的深入看就可以了。

          2、《Agile Java》中文版

          這本書是出版社送給我的,我一拿到就束之高閣,放在書柜一頁都沒有翻過,但是前兩天整理書柜的時(shí)候,拿出來一翻,竟然發(fā)現(xiàn)這絕對是一本好書!這本書一大特點(diǎn)是以單元測試和TDD來貫穿全書的,在教你Java各種重要的基礎(chǔ)知識的過程中,潛移默化的影響你的編程思維走向敏捷,走向TDD。另外這本書成書很新,以JDK5.0的語法為基礎(chǔ)講解,要學(xué)習(xí)JDK5.0的新語法也不錯(cuò)。還有這本書對于內(nèi)容取舍也非常得當(dāng),Java語言畢竟類庫龐大,可以講的內(nèi)容太多,這本書選擇的內(nèi)容以及內(nèi)容的多寡都很得當(dāng),可以讓你以最少的時(shí)間掌握J(rèn)ava最重要的知識,順便培養(yǎng)出來優(yōu)秀的編程思路,真是一本不可多得的好書。

          雖然作者自己把這本書定位在入門級別,但我不確定這本書用來入門是不是稍微深了點(diǎn),我自己也準(zhǔn)備有空的時(shí)候翻翻這本書,學(xué)習(xí)學(xué)習(xí)。

          二、Java編程進(jìn)階類

          打下一個(gè)良好的Java基礎(chǔ),還需要更多的實(shí)踐經(jīng)驗(yàn)積累,我想沒有什么捷徑。有兩本書值得你在編程生涯的這個(gè)階段閱讀,培養(yǎng)良好的編程習(xí)慣,提高你的代碼質(zhì)量。

          1、《重構(gòu) 改善既有代碼的設(shè)計(jì)》

          這本書名氣很大,不用多介紹,可以在閑暇的時(shí)候多翻翻,多和自己的實(shí)踐相互印證。這本書對你產(chǎn)生影響是潛移默化的。

          2、《測試驅(qū)動(dòng)開發(fā) by Example》

          本書最大特點(diǎn)是很薄,看起來沒有什么負(fù)擔(dān)。你可以找一個(gè)周末的下午,一邊看,一邊照做,一個(gè)下午就把書看完,這本書的所有例子跑完了。這本書的作用是通過實(shí)戰(zhàn)讓你培養(yǎng)TDD的思路。

          三、Java架構(gòu)師之路

          到這個(gè)階段,你應(yīng)該已經(jīng)非常嫻熟的運(yùn)用Java編程,而且有了一個(gè)良好的編程思路和習(xí)慣了,但是你可能還缺乏對應(yīng)用軟件整體架構(gòu)的把握,現(xiàn)在就是你邁向架構(gòu)師的第一步。

          1、《Expert One-on-One J2EE Design and Development》

          這本書是Rod Johnson的成名著作,非常經(jīng)典,從這本書中的代碼誕生了springframework。但是好像這本書沒有中譯本。

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

          這本書由gigix組織翻譯,多位業(yè)界專家參與,雖然署名譯者是JavaEye,其實(shí)JavaEye出力不多,實(shí)在是忝居譯者之名。

          以上兩本書都是Rod Johnson的經(jīng)典名著,Java架構(gòu)師的必讀書籍。在我所推薦的這些書籍當(dāng)中,是我看過的最仔細(xì),最認(rèn)真的書,我當(dāng)時(shí)讀這本書幾乎是廢寢忘食的一氣讀完的,有小時(shí)候挑燈夜讀金庸武俠小說的勁頭,書中所講內(nèi)容和自己的經(jīng)驗(yàn)知識一一印證,又被無比精辟的總結(jié)出來,讀完這本書以后,我有種被打通經(jīng)脈,功力爆增的感覺。

          但是后來我看過一些其他人的評價(jià),似乎閱讀體驗(yàn)并沒有我那么high,也許是因?yàn)槊總€(gè)人的知識積累和經(jīng)驗(yàn)不同導(dǎo)致的。我那個(gè)時(shí)候剛好是經(jīng)驗(yàn)知識積累已經(jīng)足夠豐富,但是還沒有系統(tǒng)的整理成型,讓這本書一梳理,立刻形成完整的知識體系了。

          3、《企業(yè)應(yīng)用架構(gòu)模式》

          Martin的又一本名著,但這本書我只是泛泛的看了一遍,并沒有仔細(xì)看。這本書似乎更適合做框架的人去看,例如如果你打算自己寫一個(gè)ORM的話,這本書是一定要看的。但是做應(yīng)用的人,不看貌似也無所謂,但是如果有空,我還是推薦認(rèn)真看看,會讓你知道框架為什么要這樣設(shè)計(jì),這樣你的層次可以晉升到框架設(shè)計(jì)者的角度去思考問題。Martin的書我向來都是推崇,但是從來都沒有像Rod Johnson的書那樣非常認(rèn)真去看。

          4、《敏捷軟件開發(fā) 原則、模式與實(shí)踐》

          Uncle Bob的名著,敏捷的經(jīng)典名著,這本書比較特別,與其說是講軟件開發(fā)過程的書,不如說講軟件架構(gòu)的書,本書用了很大篇幅講各種面向?qū)ο筌浖_發(fā)的各種模式,個(gè)人以為看了這本書,就不必看GoF的《設(shè)計(jì)模式》了。

          四、軟件開發(fā)過程

          了解軟件開發(fā)過程不單純是提高程序員個(gè)人的良好編程習(xí)慣,也是增強(qiáng)團(tuán)隊(duì)協(xié)作的基礎(chǔ)。

          1、《UML精粹》

          UML其實(shí)和軟件開發(fā)過程沒有什么必然聯(lián)系,卻是軟件團(tuán)隊(duì)協(xié)作溝通,撰寫軟件文檔需要的工具。但是UML真正實(shí)用的圖不多,看看這本書已經(jīng)足夠了,完全沒有必要去啃《UML用戶指南》之類的東西。要提醒大家的是,這本書的中譯本翻譯的非常之爛,建議有條件的看英文原版。

          2、《解析極限編程 擁抱變化》XP

          這是Kent Beck名著的第二版,中英文對照。沒什么好說的,必讀書籍。

          3、《統(tǒng)一軟件開發(fā)過程》UP

          其實(shí)UP和敏捷并不一定沖突,UP也非常強(qiáng)調(diào)迭代,測試,但是UP強(qiáng)調(diào)的文檔和過程驅(qū)動(dòng)卻是敏捷所不取的。不管怎么說,UP值得你去讀,畢竟在中國真正接受敏捷的企業(yè)很少,你還是需要用UP來武裝一下自己的,哪怕是披著UP的XP。

          4、《敏捷建模》AM

          Scott Ambler的名著,這本書非常的progmatic,告訴你怎么既敏捷又UP,把敏捷和UP統(tǒng)一起來了,又提出了很多progmatic的建議和做法。你可以把《解析極限編程 擁抱變化》、《統(tǒng)一軟件開發(fā)過程》和《敏捷建模》這三本書放在一起讀,看XP和UP的不同點(diǎn),再看AM是怎么統(tǒng)一XP和UP的,把這三種理論融為一爐,形成自己的理論體系,那么你也可以去寫書了。

          五、軟件項(xiàng)目管理

          如果你突然被領(lǐng)導(dǎo)提拔為項(xiàng)目經(jīng)理,而你完全沒有項(xiàng)目管理經(jīng)驗(yàn),你肯定會心里沒底;如果你覺得自己管理項(xiàng)目不善,很想改善你的項(xiàng)目管理能力,那么去考PMP肯定是遠(yuǎn)水不解近渴的。

          1、《快速軟件開發(fā)》

          這也是一本名著。可以這樣說,有本書在手,你就有了一個(gè)項(xiàng)目管理的高級參謀給你出謀劃策,再也不必?fù)?dān)心自己不能勝任的問題了。這本書不是講管理的理論的,在實(shí)際的項(xiàng)目管理中,講這些理論是不解決問題的,這本書有點(diǎn)類似于“軟件項(xiàng)目點(diǎn)子大全”之類的東西,列舉了種種軟件項(xiàng)目當(dāng)中面臨的各種問題,以及應(yīng)該如何解決問題的點(diǎn)子,你只需要稍加變通,找方抓藥就行了。

          六、總結(jié)

          在這份推薦閱讀書籍的名單中,我沒有列舉流行的軟件框架類學(xué)習(xí)書籍,例如Struts,Hibernate,Spring之類,也沒有列舉AJAX方面的書籍。是因?yàn)檫@類書籍容易過時(shí),而上述的大半書籍的生命周期都足夠長,值得你去購買和收藏。

          posted on 2007-07-09 08:23 王君 閱讀(2457) 評論(5)  編輯  收藏 所屬分類: J2SE

          Feedback

          # re: Java程序員推薦的閱讀書籍(學(xué)習(xí)JAVA者不看必后悔) 2007-07-09 15:09 交口稱贊
          個(gè)人認(rèn)為《Java編程思想》 不是一本入門的好書

          我一直都是向別人推薦
          java2參考大全
            回復(fù)  更多評論
            

          # re: Java程序員推薦的閱讀書籍(學(xué)習(xí)JAVA者不看必后悔) 2007-07-10 07:22 wjun
          本人非常喜歡《Agile Java》中文版 這本書。  回復(fù)  更多評論
            

          # re: Java程序員推薦的閱讀書籍(學(xué)習(xí)JAVA者不看必后悔) 2007-07-10 09:45 Alexander.Yu
          core java 也不錯(cuò)的。  回復(fù)  更多評論
            

          # re: Java程序員推薦的閱讀書籍(學(xué)習(xí)JAVA者不看必后悔) 2007-07-10 13:48 交口稱贊
          《java2參考大全》和《java2核心技術(shù) 基礎(chǔ)篇》和《java2學(xué)習(xí)筆記1.6》

          後兩本沒看過
          不評價(jià)

          就說說java2參考大全和Java編程思想
          java2參考大全更適合沒有語言基礎(chǔ),或者只有一點(diǎn)語言基礎(chǔ)的兄弟。
          對學(xué)習(xí)java語言很不錯(cuò),通俗易懂,用一個(gè)個(gè)小例子循序漸進(jìn),并且把面向?qū)ο蟮乃枷耄灤┰谝粋€(gè)個(gè)的例子里面了,讓你逐步掌握J(rèn)AVA語言的同時(shí)逐步領(lǐng)悟面向?qū)ο蟮乃枷搿?

          看完以后再找本100例,全部自己寫一遍,至少語法關(guān)是過了。其他的東西要靠以后工作中慢慢體會,很多時(shí)候思想這種東西是要靠自己悟的。

          java編程思想個(gè)人不是很喜歡,覺得不適合做為入門書籍,一個(gè)沒接觸過java語言的人,看完這本書還是很難上手去寫一些東西,比較適合有其他語言功底的兄弟轉(zhuǎn)行時(shí)候看看,但是純粹做為提高的話,又稍嫌不夠。


            回復(fù)  更多評論
            

          # re: Java程序員推薦的閱讀書籍(學(xué)習(xí)JAVA者不看必后悔) 2007-07-10 13:50 交口稱贊
          再補(bǔ)充一下


          java2參考大全有制作精美的PDF版本,非掃描版本哦。

          Java編程思想,有制作精美的CHM版,但是很多兄弟說中文版本翻譯的不好,
          好像有幾個(gè)人在網(wǎng)上自己翻譯,據(jù)說那個(gè)版本不錯(cuò),貌似快翻譯完了吧。
            回復(fù)  更多評論
            

          主站蜘蛛池模板: 莒南县| 长岛县| 海晏县| 博湖县| 平舆县| 来宾市| 桐庐县| 九江县| 阿拉善左旗| 新津县| 那坡县| 沅陵县| 泰和县| 荃湾区| 亚东县| 邵阳县| 襄汾县| 普定县| 长乐市| 连平县| 密云县| 奉化市| 武胜县| 阜康市| 集安市| 诏安县| 惠来县| 重庆市| 丰镇市| 龙岩市| 宁津县| 高青县| 江陵县| 武夷山市| 淅川县| 武城县| 霍山县| 应用必备| 克拉玛依市| 阿城市| 宜兰县|