dream.in.java

          能以不變應(yīng)萬(wàn)變是聰明人做事的準(zhǔn)則。萬(wàn)事從小事做起,積累小成功,問鼎大成功,是成功者的秘訣。

          Java程序員的推薦閱讀書籍

           
           

          http://www.javaeye.com/wiki/Java_Newbie/945-java-programmers-recommendation-booksJava程序員的推薦閱讀書籍

          原創(chuàng)作者: robbin   閱讀:8800次   評(píng)論:37條   更新時(shí)間:2008-12-16    
          作為Java程序員來說,最痛苦的事情莫過于可以選擇的范圍太廣,可以讀的書太多,往往容易無(wú)所適從。我想就我自己讀過的技術(shù)書籍中挑選出來一些,按照學(xué)習(xí)的先后順序,推薦給大家,特別是那些想不斷提高自己技術(shù)水平的Java程序員們。

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

          Java編程入門類 Top

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

          1、《Java編程思想》


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

          2、《Agile Java》中文版


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

          雖然作者自己把這本書定位在入門級(jí)別,但我不確定這本書用來入門是不是稍微深了點(diǎn)。

          Java編程進(jìn)階類 Top

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

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


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

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


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

          Java架構(gòu)師之路 Top

          到這個(gè)階段,你應(yīng)該已經(jīng)非常嫻熟的運(yùn)用Java編程,而且有了一個(gè)良好的編程思路和習(xí)慣了,但是你可能還缺乏對(duì)應(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)知識(shí)一一印證,又被無(wú)比精辟的總結(jié)出來,讀完這本書以后,我有種被打通經(jīng)脈,功力爆增的感覺。

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

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


          Martin的又一本名著,但這本書我只是泛泛的看了一遍,并沒有仔細(xì)看。這本書似乎更適合做框架的人去看,例如如果你打算自己寫一個(gè)ORM的話,這本書是一定要看的。但是做應(yīng)用的人,不看貌似也無(wú)所謂,但是如果有空,我還是推薦認(rèn)真看看,會(huì)讓你知道框架為什么要這樣設(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ā)過程 Top

          了解軟件開發(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名著的第二版,中英文對(duì)照。沒什么好說的,必讀書籍。

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


          其實(shí)UP和敏捷并不一定沖突,UP也非常強(qiáng)調(diào)迭代,測(cè)試,但是UP強(qiáng)調(diào)的文檔和過程驅(qū)動(dòng)卻是敏捷所不取的。不管怎么說,UP值得你去讀,畢竟在中國(guó)真正接受敏捷的企業(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)目管理 Top

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

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


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

          評(píng)論 共 37 條 發(fā)表評(píng)論
          jamesqiu 2009-01-08 11:11 引用
          XP和Scrum中最后沉淀下來的也就TDD有大用途
          jamesqiu 2009-01-08 11:09 引用
          頂多再看看JUnit的在線Tutorial
          jamesqiu 2009-01-08 11:08 引用
          人生有限,看JavaAlmanac和Effective Java就足夠了.
          wxlmcqueen 2009-01-08 08:52 引用
          看第一本就能提升一個(gè)檔次

          whaosoft 2009-01-03 11:59 引用
          呃 我沒看過測(cè)試 和ejb 的~
          wanghualeilei 2009-01-01 16:45 引用
          <企業(yè)應(yīng)用架構(gòu)模式>的譯本也絕版了 我只買到了打印的 哎 可憐
          wanghualeilei 2009-01-01 16:44 引用
          還有<design patterns>啊 OO的老祖宗 也是refectoring的目標(biāo)
          老菜刀 2008-12-30 21:24 引用
          其實(shí)要想成為好的java程序員,Think in Java還真得每個(gè)章節(jié)都認(rèn)真看一看。挑著看是不行的。
          san_yun 2008-12-30 13:40 引用
          看到最后才發(fā)現(xiàn)最好的書是Java Tutorial
          chuanling123 2008-12-29 22:48 引用


          都是很好的書籍,目前正在著手研究、《敏捷軟件開發(fā) 原則、模式與實(shí)踐》 英文版和、《重構(gòu) 改善既有代碼的設(shè)計(jì)》 ,以及spring AOP.
          dongjie.liu 2008-12-29 20:38 引用
          JAVA 核心技術(shù)
          ccj2008 2008-12-28 23:08 引用
          thinking java應(yīng)該得買一本
          dayang2001911 2008-12-26 23:04 引用
          買書!  
          lyb520320 2008-12-26 15:06 引用
          mark
          elmar 2008-12-26 14:14 引用
          引用

          有人問郎咸平:郎教授,看什么書才能成為世界頂尖的經(jīng)濟(jì)分析師郎咸平說:你別指望了,頂尖的經(jīng)濟(jì)分析師都在國(guó)外,而且是師徒制,任你再怎么看書也達(dá)不到人家的水平WorldHello 寫道有人問郎咸平:郎教授,看什么書才能成為世界頂尖的經(jīng)濟(jì)分析師郎咸平說:你別指望了,頂尖的經(jīng)濟(jì)分析師都在國(guó)外,而且是師徒制,任你再怎么看書也達(dá)不到人家的水平不過我還是把這頁(yè)收藏了即使成不了頂尖的,混口飯吃應(yīng)該沒啥問題O(∩_∩)O

          經(jīng)濟(jì)學(xué)的正確性是由槍炮決定的。
          zhuyx808 2008-12-26 14:03 引用
          e, mark
          jianyi.hh 2008-12-26 10:18 引用
          留個(gè)名,謝謝!
          lcllcl987 2008-12-25 13:27 引用
          without ejb翻譯的也不太好
          xxp3369@126.com 2008-12-25 09:48 引用
          WorldHello 寫道

          有人問郎咸平:郎教授,看什么書才能成為世界頂尖的經(jīng)濟(jì)分析師郎咸平說:你別指望了,頂尖的經(jīng)濟(jì)分析師都在國(guó)外,而且是師徒制,任你再怎么看書也達(dá)不到人家的水平

          郎教授也說過有個(gè)世界頂尖的經(jīng)濟(jì)分析師的博士導(dǎo)師說故意把書寫得很難看懂.
          我覺得太平坦的路培養(yǎng)不出人才,師徒制不是最重要的,重要的是研究環(huán)境比較好.
          udvs 2008-12-24 16:31 引用
          Expert One-on-One J2EE Design and Development 有中譯的,不過很爛
          leton2008 2008-12-24 10:13 引用
          快速軟件開發(fā)不錯(cuò)的。以前參考過一段。
          spaceflysky@163.com 2008-12-24 09:37 引用
          頂一個(gè)sss
          androider 2008-12-22 21:33 引用
          Head first系列就是廢話太多,可能更適合老外看。
          poemcode 2008-12-22 09:59 引用
          我希望看到Robbin推薦的Ruby方面的推薦閱讀書籍,不知道Robbin有沒有這方面的打算?
          d2lorder 2008-12-22 09:31 引用
          WorldHello 寫道

          有人問郎咸平:郎教授,看什么書才能成為世界頂尖的經(jīng)濟(jì)分析師郎咸平說:你別指望了,頂尖的經(jīng)濟(jì)分析師都在國(guó)外,而且是師徒制,任你再怎么看書也達(dá)不到人家的水平

          話是這樣沒錯(cuò),但是世上總有奇跡發(fā)生的
          多看些書,總比不看書自己摸索來的強(qiáng)
          hlylove 2008-12-20 11:20 引用
          WorldHello 寫道

          有人問郎咸平:郎教授,看什么書才能成為世界頂尖的經(jīng)濟(jì)分析師郎咸平說:你別指望了,頂尖的經(jīng)濟(jì)分析師都在國(guó)外,而且是師徒制,任你再怎么看書也達(dá)不到人家的水平

          精辟
          hopkinside 2008-12-18 23:10 引用
          《Expert One-on-One J2EE Development without EJB》確實(shí)是本好書,好到我想買上幾本,給我的學(xué)生,給我的朋友,給我的同事......
          hopkinside 2008-12-18 23:06 引用
          《Expert One-on-One J2EE Design and Development》 有中譯本,不過翻譯不夠好,而且推出較早,市場(chǎng)上還沒有對(duì)spring多少感想,因而影響不大。
          記得當(dāng)初還是我在china-pub論壇上推薦此書中譯本的呢,gigix也受我的推薦影響......
          lishali12345 2008-12-18 09:56 引用
          WorldHello 寫道

          有人問郎咸平:郎教授,看什么書才能成為世界頂尖的經(jīng)濟(jì)分析師郎咸平說:你別指望了,頂尖的經(jīng)濟(jì)分析師都在國(guó)外,而且是師徒制,任你再怎么看書也達(dá)不到人家的水平

          人才啊
          wjs0702cn 2008-12-18 09:23 引用
          上面絕大多數(shù)的書我都沒有看過,但是在實(shí)際工作中,我發(fā)現(xiàn)同一類型的書,我最起碼要看兩三本,就像《Thinking in Java》 之后還有《Head First Java, 2nd Edition》 《Core Java 2》

          發(fā)表評(píng)論

          表情圖標(biāo)

          字體顏色:  字體大小:  對(duì)齊:
          提示:選擇您需要裝飾的文字, 按上列按鈕即可添加上相應(yīng)的標(biāo)簽
          您還沒有登錄,請(qǐng)登錄后發(fā)表評(píng)論

          posted on 2009-01-09 16:40 YXY 閱讀(304) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 永清县| 合肥市| 沧源| 赤水市| 郸城县| 屏边| 江山市| 秦皇岛市| 常宁市| 波密县| 新竹市| 辽宁省| 杭州市| 上杭县| 淅川县| 宁国市| 寿宁县| 浦东新区| 平和县| 阜宁县| 沁水县| 娱乐| 江北区| 靖江市| 汉阴县| 丰城市| 泾源县| 西乌| 长顺县| 富顺县| 辽宁省| 喀什市| 固镇县| 凉山| 岱山县| 邵东县| 宜君县| 石柱| 滦平县| 大连市| 宁城县|