1. 什么是好書
經(jīng)常聽到或者在網(wǎng)上看到很多人在評論某本書很好或者很爛,很多人也把這些評論當作買與不買的依據(jù)。
據(jù)我所見,槍手的贊美之詞其實并不常見。而那種只言片語的負面評價卻經(jīng)常可以看到,在這些負面評價中,我也經(jīng)常會看到一些其實很不錯的書被毫無建設性的漫罵。
分析一下評價書不夠好的原因,有以下幾種
一種是書真的不好,多數(shù)都是抄襲和錯誤引導的那種,國內(nèi)作者的比較多見。
一種是覺得以他的水平覺得這書沒用。這樣的評論其實就是不夠實事求是。不同水平不同風格的人適應的書不同,一本書可能技術含量不高,但是對于特定人群來講絕對是一本好書。
一種是覺得翻譯得不好。其實有的書還不至于特別的不堪就被人罵得狗血噴頭了,我想說的是鉆這種牛角尖完全沒有必要,只要大致上意思能夠理解就OK了,既然 能看出來是錯了,那么也就說明能夠理解。有能力看英文原版的人畢竟不多,盡管技術書籍還是比較容易看懂,但有的英文原版看起來也的確很費力。 特別是那種內(nèi)容夠好,但是翻譯不好(說實話,翻得特別不好的書并不多)的書,需要自己去組織一下,考驗閱讀理解能力和技術基礎知識的時候到了。
一種是看見特定作譯者,出版社就罵的。可是就算是沙里淘金也可能有閃光的,不負責任的評論是不應該的。
最差勁的一種是實際上是因為自己的能力不足以看懂書的內(nèi)容,卻說書不好。
其實選書如小馬過河,適合的就是好的。不同的背景,不同的需要,應該有不同的選擇。比如什么都不會的時候,突然要做項目,這種時候如果去看那種從原理講起的,豈不是不合時宜。但如果時間比較從容,看看原理才會真正掌握一項技術。
2. 中文書還是外文書
中文書有兩種,一種是國內(nèi)的人寫的,一種是翻譯的。
先說國內(nèi)的人寫的。早期國內(nèi)書籍水平普遍比較低,基本上是一群自己也沒弄懂的人隨便找點資料粘貼出來的。
現(xiàn)在這種情況已經(jīng)大有改觀了,不是說那種粘貼的書少了,而是的確有很多優(yōu)秀的開發(fā)人員寫出了一些很好的書。
再有就是翻譯的書。絕大部分被翻譯到國內(nèi)的書本身都是相當不錯的書,可是由于翻譯人員水平的問題,或者根本不是做技術的人,或者那種老學究非得翻譯得與眾 不同,翻譯過的書大部分都會比原文失色一些。但是由于母語和英語在閱讀速度上的巨大差異,容忍這點失色絕大多數(shù)情況下都是值得的。何況,技術書籍又不是文 學作品,死扣字眼沒什么意義。
再說外文書。實際上技術書籍一般來說閱讀起來多數(shù)都不會很吃力,尤其是在你有了一定的背景知識之后。但是確實還是有一些作者寫出來東西比較難理解,不是說 老外就都擅長寫作的。一般來說,如果有中文版本,我都會看中文版的,沒有中文版又實在想看的才去看英文版。在新的術語比較多的情況下,最好要中英文參照著 看,這樣才能理解中文術語對應的英文術語。在中文版理解起來有疑問的情況下,也可以去參照一下英文版。不鼓勵在沒有積累足夠的術語基礎的情況下直接去讀英 文版。
3. 超越書籍
軟件開發(fā)是一門實踐性的工作。所謂 紙上得來終覺淺,絕知此事需躬行。只看書不實踐也是白費。
真正的高手看書很少,注意可不是很少看書。他們把更多的時間用在寫代碼、讀代碼和讀specification上。我又懶又笨,所以看了很多。
以前在CSDN上看到一個帖子,有人感覺學得很努力但是進步很小,另一個人回復說“你還缺乏把代碼反復修改一百遍的勇氣”。
深以為然。不要總急著學新東西,要先把手頭的知識吃透。
-------------------------------------
書名
"21天學通Java2(第二版)
21天學通Java 2(第3版)"
"如果你是一個初學者,想做一個快速而系統(tǒng)的Java入門,那么我推薦看這本書。
如果你還沒有系統(tǒng)的看過任何一本J2SE的書,比如下面列出的幾種,也不打算以后去看那么厚的書,那么也推薦看看這本書。
這本書本身內(nèi)容上并沒有特別出彩的地方,但是難得用這么短的篇幅覆蓋了常用Java技術的知識點,非常系統(tǒng)而且比較容易上手。
這本書市面上有兩個版本,第2版和第3版。對于入門來說,我更傾向于相對簡單的第2版。第3版適當增加了一些Web開發(fā)方面的技術,有點雞肋的感覺,不過對于初學者來說,多點見識也不錯。"
----
"Java 2核心技術(第6版) 卷I:基礎知識
最新 Java 2 核心技術 卷II:高級性能(V1.3)5E
JAVA 2核心技術 卷I:基礎知識(原書第7版)
JAVA 2核心技術 卷II:高級特性(原書第7版)"
評價:"我的第一本Java書籍就是本書的第4版。
如果只能選擇一本Java基礎編程書籍的話,那么毫無疑問應該是core java。這本書值得一行一行的去讀。
不過這本書往往把一些很重要的話隱藏在字里行間,不仔細閱讀的話,一不小心就會漏掉很有價值的話,或者你在剛開始的時候壓根就沒有能力意識到它的價值。
現(xiàn)在市場上可以見到卷一的第6版,卷2的第5版,以及第7版的卷一卷二。
如果做入門學習,推薦看第6版的卷一,因為第7版是基于Java5的,Java5由于引入了泛型和自動裝箱等能力,容易使初學者把關注點偏離Java語言 的核心能力,我一向認為對初入門者,信息一定要精干,不必要的復雜信息最好藏起來。如果已經(jīng)對Java很熟練了,或者在面向對象編程方面已經(jīng)有比較深的認 識的話,那么擁有一套第7版是應該的。"
--------------------------------------
Java程序設計教程(第五版)
"如果你對java核心技術那種四平八穩(wěn)的理論敘述感到無所適從的話,那么這本奶媽一樣的Java書籍可能是一個適合你的選擇。雖然我本人非常不喜歡這種 過于細膩的風格,但是也不得不承認這是一本足夠優(yōu)秀的教材。在培養(yǎng)面向對象的思維方面是這本書比較突出的特點。做為大學生學習更適合一些,想要自己往快了 跑的人看這書怕是要急死。
"
-------------------------------------
Java 2教程(第六版)
如果你實在覺得Core Java的GUI部分是在浪費錢財,同時象我一樣不喜歡Java程序設計教程這本書,那么這本書應該是你的選擇了。這本書以合理的厚度,合理的詳略程度講解了合理分量的Java技術點。可以認為是21天學通Java2的火力加強版。
-------------------------------------
Java語言程序設計(原書第3版)
"這本書難得是個華人寫的(雖然是用英語寫然后再由國內(nèi)的人翻譯過來),放在這里支持一下。
總體來說,相對于上面的書,定位比較尷尬。
在個別地方還是有其他書沒有直接覆蓋到的獨特的亮色。可以泛讀。"
--------------------------------------
"java編程思想(第二版)
java編程思想(第三版)"
"這是一本很有意思的書。
它是入門的書嗎?是的,如果你的計算機科學基礎知識還算OK的話。不是,如果你壓根就沒有其他任何面向對象語言(直接說吧最好就是C++)編程的足夠經(jīng)驗的話。
它算是一本系統(tǒng)的講述Java的書嗎?勉強吧。或者基本上不算。它以一種神出鬼沒式的方式帶你進入Java語言的世界,然后近似于隨機的選擇一些中國旅游景點用英文介紹給你聽。
那為什么這么多人說它是一本好書?因為說它好的人在看這本書之前,計算機基礎知識和某一門面向對象的語言(最好是C++)已經(jīng)相當?shù)腛K了,它能夠以一種最接近C++程序員口味的方式把C++程序員迅速領入Java語言的世界,那個時代可是C++程序員的天下啊。
那么,它不算好書嘍?不,它對于厘清初學Java的人很多重要觀念上的幫助是非常非常大的。而且,與java核心技術不同,它明確的把作為一個合格的 java程序員最最應該弄透的知識點以直接了當?shù)姆绞教岢鰜恚欣诜直妗R虼耍阒辽賾撛谀硞€合適的時候讀上一兩遍。
據(jù)說看完這本書就算高手了,是嗎?有可能,如果你能不斷的把學到的 東西運用到代碼里去的話。否則也就是java基礎理論合格,部分過于合格,呵呵。
理論終歸只是理論,實踐中還有很多的技巧,下面的書才是成長為編碼高手的踏腳石。
現(xiàn)在市面上有第二版和第三版,看哪個好呢?
第二版是侯捷翻譯的,無數(shù)侯fans說好,有人因此專找第二版,對此我持保留意見。我認為,作為面向大陸的譯本,不能在術語上尊重大陸習慣,就是不尊重大陸的讀者。第二版和第三版在一些我認為無所謂的內(nèi)容上各有取舍,自己看實際和習慣選吧,反正最核心的東西都在。
不過,關于Exception的使用,作者在第3版對之前的想法做了一個否定,這一段值得單獨看看。最好能參照他以前的想法看(這個我比較傾向看第一版,找不到的話就第二版吧)"
--------------------------------------------
成為優(yōu)秀的J2SE開發(fā)人員
書名
JUNIT in Action中文版
不看此書,不可能成為合格的開發(fā)人員。當然你可能不能一下子接受所有的內(nèi)容,隨著能力的提高慢慢學吧。
Effective Java中文版
除非你在編程方面極有天賦,或者你寧愿去鉆研很多的優(yōu)秀代碼,沒看過這本書的人要想成為一個優(yōu)秀的J2SE開發(fā)人員簡直不可想象。我承認這話可能有點過分,那就過分吧。
Practical Java(中文版)
OK,如果你能很輕松的理解Effective Java并且心有戚戚焉, 那就沒有必要看這本書了。如果不是這樣, 先把這本書看明白了再說。
高質量 Java 程序設計
"雖然這本書的作者里比較惡心的掛了一個無謂的林銳,雖然作者是兩個年輕的中國人。但是這本書的內(nèi)容絕對不會讓人失望。如果說上面兩本書從老外程序員深厚 的開發(fā)基礎的角度提出了一些有效的實踐,那么這本書則從年輕的中國程序員的角度給出了很多相當?shù)轿欢猩疃鹊闹v解。當然,全書的選材角度可能不太一致,深 淺不一,但這絲毫不影響它的精彩。
可惜,由于乏人喝彩,這本書目前已經(jīng)絕版了。"
"Java Pitfalls
More Java Pitfalls中文版"
"如果說effective java目標是讓你成長為卓越,那么這兩本書的實際功用應該是讓你少犯迷糊。
這兩本書看了就是為了長見識,畢竟自己編程沒那么多,那么多看看別人可能出的問題也就相當于自己編了很多程序。"
JAVA解惑
"Effective Java的作者寫的書,剛剛出版。
我還沒來得急仔細看,可是隨手翻了幾個故事,發(fā)現(xiàn)自己的Java算是白學了:(
談不上很實用,但是對于了解Java語言規(guī)范很有幫助。"
JAVA實例技術手冊
"如果你覺得上面的書過于理論化,對你來說太抽象,或者,你覺得很閑,學習沒有方向感。那就照著這本書一個實例一個實例的做下去吧。
"
javaalmanac.com
"都是很小的一些代碼片斷,用于展示java API的實例用法。
你一定要把它放在收藏夾里,做為編碼的參考。
我曾經(jīng)有一本印刷版的<Java Developers ALMANAC 中文版>,可惜不知道弄到哪里去了:("
透徹理解J2SE
書名
深入Java虛擬機(原書第2版)
雖然看這個其實并不能讓你成為編碼上的高手,但是有了這個基礎,你再次回頭去看以前看過的書籍,會發(fā)現(xiàn)你的認識會上一個臺階,很多以前難以理解的問題迎刃而解。
JVM Specification
這個不是書籍,而是Sun的文檔。如果你放著上面講解透徹,比較容易理解的中文書不想看,那么就看看這個原滋原味的吧
Java Language Specication
這個不是書籍,而是Sun的文檔。不管能看明白多少,至少是一定要看的,而且要和JVM Specification參照著看
Tuning Garbage Collection with the 1.3.1 Java Virtual Machine
這個不是書籍,而是Sun的文檔。如果你沒有運氣看過《高質量 Java 程序設計》,那么看看這個文檔自己彌補一點算一點吧。
其他J2SE話題
"關于J2SE還有一些對于企業(yè)應用開發(fā)來說(尤其是現(xiàn)在web開發(fā)甚囂塵上的年代)相對冷僻一點的話題。
在上面也沒有列出一本關于Java GUI的專門的書。除了我本人在GUI開發(fā)上的實際經(jīng)驗近乎于0的因素之外。
一方面還是因為Java核心技術,甚至其它一些GUI內(nèi)容更少的書中的內(nèi)容已經(jīng)基本上能應付一般的開發(fā)需要了。
另一方面,關于GUI成系統(tǒng)的書少得可憐,曾經(jīng)有一套相當權威的Java圖形技術,不過已經(jīng)絕版了。
這里列出來僅供參考。"
Java線程編程
簡單看過一些,很不錯的書,大概入門到中級的水準。
Java多線程設計模式
"真是一本好書啊,以前在各處看到的多線程程序寫法在這里得到了集中講解。
不過由于這方面的編程經(jīng)驗比較少,很多東西看過就忘了。"
Java網(wǎng)絡編程
沒看過,不過看目錄不錯的樣子,O'relly的書基本上質量也是有保障的。
Java網(wǎng)絡編程技術內(nèi)幕
"書真是好書啊,可惜基于的Java版本太老了點,即使看這書也別照著學。
不過原始自有原始的用處,越原始的東西越接近底層原理。"
深入Java 2平臺安全--體系架構、API設計和實現(xiàn)(第二版)
Sun中國研究院院長的著作。曾經(jīng)企圖看這書,可是我在java安全模型上的認識還差得太遠,加上這書寫得比較晦澀,怎么也看不進去,放棄。
----------------
J2EE之Web開發(fā)
Web開發(fā)基礎
書名
循序漸進HTML與XHTML教程
HTML是Web開發(fā)的絕對基礎知識。看這種書的主要目的是打好HTML的基礎,很多做了很長時間web開發(fā)的人其實壓根都沒系統(tǒng)的看過HTML的書。市面上很難找到HTML系統(tǒng)全面的書,沒辦法,這本還算相當?shù)臏惡狭恕?
CSS的書
關于CSS的書,國內(nèi)市場上沒有能令人滿意的。很久以前有過一本CSS權威指南,學術味太濃了,現(xiàn)在也絕版了。不過關于CSS的書,日本有很多非常不錯的書。
任何javascript的入門書
通過野路子也能學會基本的javascript用法。低水平應用多數(shù)情況下也夠用了。但還是建議看看書吧。不過javascript的入門到中級的書真是 五花八門,成系統(tǒng)的少之又少,大多數(shù)都是奇技淫巧,自己挑能看懂的亂看吧,因為除了下面要介紹的兩本書,其他的都遠不夠系統(tǒng)。
WEB設計技術手冊
"各種關于Web開發(fā)的其他一些零亂的知識可以從這里學到,想從別的地方學到還真不太容易。
自己挑著不知道的東西看吧。"
Dreamwaver MX互動網(wǎng)頁圣經(jīng)
通過Dreamwaver你可以快速學習到很多HTML和CSS的規(guī)范用法。建議掌握。這里列這本書,只不過是因為我恰好看到了它,內(nèi)容還算合格,厚薄也還合理。
WEBMASTER技術手冊
"你可以把這本書做為一個checklist,看看你的web開發(fā)基礎是否合格。
這本書系統(tǒng)的涉及了做為一個web開發(fā)人員所應掌握的基礎知識。"
Web開發(fā)進階
書名
Javascript寶典
"我知道有一些人對XX寶典呲之以鼻,認為沒有技術含量。但是,我發(fā)現(xiàn)做為開發(fā)人員,最需要放在手邊的那種書還真的就是寶典系列。
如果你想快速準確系統(tǒng)的掌握javascript語言,舍此書無它。"
Javascript權威指南
"對于真正的Javascript語言的核心,除本書之外,我沒在其他任何書里看到過。
不看此書,不可能成為高手。"
MSDN web開發(fā)部分
"這個不是書。坦白說我也從來都沒有系統(tǒng)的看全過。
由于微軟對DHTML,CSS,JScript都有很多獨到的創(chuàng)新,除了這里,其他地方是學不到的。"
Mozilla的web開發(fā)人員指南
"首先,火狐異軍突起,要加以重視。其次,在對于很多標準的支持上,火狐比IE要合格得多。
這個站點匯集了所有必要的正規(guī)規(guī)范。不看這里,會導致把IE的土匪路子誤認為是正規(guī)軍 - 盡管得承認,那些野路子在很多時候真的是貼心啊。"
apache server2.0技術參考大全
"理解web服務器背后的秘密,會對理解web開發(fā)中的一些東西有很大的助益。Apache server幾乎就是webserver的代名詞,它的配置風格幾乎是其他werbserver的標準模版。理解了Apache,也就理解了絕大多數(shù)的webserver。
我接觸apache時看的是配置1.0的書,那書已經(jīng)絕版, 再說早已經(jīng)是apach2.0的時代,只能看這個了。
不過我還是那種觀點,舊版的往往更適合入門。1.X版的配置方式雖然比較零亂,但是勝在功能少,簡單,學習起來也容易。"
Servlet與JSP Web開發(fā)基礎
"在這里我陷入一個困境,因為我發(fā)現(xiàn)自己無法推薦一本單一的書既能夠滿足那些渴望快速掌握JSP的人的迫切愿望,又能消除我對由此而導致的不求甚解的擔心。
同時,在學習的順序問題上也存在問題。既然是多本書,是應該一本接一本的看?還是同時看?不同的人可能會有不同的選擇。
大體上來講,我個人比較喜歡把不同的書放在一起比較著看,這樣我能夠迅速的完成既能入門干活,又能初步掌握原理的任務。
其實多本書參照還有一個好處是,一旦一本書出現(xiàn)錯誤,立刻就可以用另一本的知識加以糾正。
我在初學JSP的時候,同時在看5本書,三本講JSP的,一本講Servlet的,一本講Servlet&JSP,幾乎囊括了當時市面上所有相關的書,呵呵。
還有一點要提醒,由于JSP和Servlet發(fā)展迅速,不同版本間的某些語法并不一致,好在初學者接觸到這些不一致的地方比較少。
問題比較多而又容易碰到的地方一個是在taglib,包括JSTL部分,一個是配置文件部分。
這里提醒大家,如果書中使用哪個版本的服務器,千萬不要自做主張使用更新版本的(尤其是Tomcat)。
從網(wǎng)上找到的代碼啥的也不一定能在哪個服務器上都沒有錯誤。"
書名
jsp應用開發(fā)詳解(第二版)
"一般這樣的快速入門書籍,國內(nèi)作者的都是首選,他們實在是太了解我們的心態(tài)了。
但是我仍然找不出一本足夠精要并且能迅速上手干活的書。太多的初學者喜歡大量的實例,尤其是所謂完整的實例。最好還加上非常流行的struts啥的。為了活路,我們的作者也不得不把這些東西弄進去。
萬般無奈,就這本吧,上手還是不錯的,實戰(zhàn)性也比較強。后面struts啥的,先別看了。
但是我聽過若干人說,學會這本書,JSP就不用看別的了,我暈。"
jsp應用開發(fā)技術
"也是一本相當不錯的JSP入門書,還給出了JSP開發(fā)人員的學習路徑,不知道為什么關注的人比較少,可能是不如<jsp應用開發(fā)詳解>厚吧:(。
太多人想一生只買一本書了。 不過我入門喜歡薄的。
關于里面struts啥的內(nèi)容,同上,先別看了。"
jsp2.0技術手冊
"相對于上兩本的大雜燴,這本書能干凈一些,是那種我喜歡的入門書風格,作者是兩個臺灣同胞,行文也是不少臺灣書籍那種平易近人的風格。
我曾經(jīng)以為終于發(fā)現(xiàn)了一本JSP的終極入門書籍,可是仔細翻閱之后還是很猶豫。
這兩個作者是經(jīng)驗相對來說并不足夠了(其中一個號稱SUN的講師,估計是掛羊頭賣狗肉),卻偏偏喜歡下結論式的寫作,盡管我也認為對于入門者來說,稍稍接受一些略有偏差的錯誤結論并沒有多大害處,但仍然害怕有人因此而受到誤導,誰讓一生只買一本書的人太多呢。
如果不是因為這個原因,我其實更推薦使用這本書入門,只是有個前提,你只要照著書里的進度學用法就是了,千萬別把結論當真。"
servlet與jsp核心編程
"不學Servlet不可能真正懂JSP。可惜,在這個浮躁的年代,誰還管那個。尤其是在類似于Struts之類框架流行的時代,寫servlet的機會已經(jīng)微乎其微了。
但是的但是啊,如果不學會Servlet,那么可以說除了會用JSP(實際上也就是HTML)寫一些界面之外,你不大可能在Java web開發(fā)上更進一步了。"
SCWCD認證專家應考指南
"首先,這本書相當于提供了一份checklist,列出了做為一個Java web developer所應該掌握的基本知識。
其次,這本書寫得非常平易近人,通過很多實驗來引導讀者。
不過,由于這本書完成得比較早了,最新的JSP2.0和Servlet2.4的內(nèi)容并沒有包含在內(nèi)。好在所謂的新特性只要做一點簡單的增量學習就可以了,如果你真正掌握了這本書的知識的話,學習那些新特性應該花費不到1天的時間就夠了。"
servlet與jsp權威指南
servlet與jsp核心編程作者的又一本好書。 可惜內(nèi)容上與servlet與jsp核心編程稍有些重疊。但是這本書里已經(jīng)開始涉及一些高級主題。可以用做學習<SCWCD認證專家應考指 南>時的參考書,畢竟應考指南那本書很多內(nèi)容由于篇幅的限制,遠遠談不上深入。
Servlet與JSP Web開發(fā)進階
"其實,如果你已經(jīng)真正掌握了上面的基礎,那么到了這個階段,應該有能力自己選書了。
而這些書能真正帶給你新知識的機會也很少了,這些書籍能帶給你的就是實踐上的東西了。
或者,如果你還沒有真正掌握上面的基礎的話,這里再給一個實踐的機會。
坦白說,這里列出的書,大部分我都沒有仔細看過,僅供參考。"
書名
jsp設計
沒看過,看目錄應該還不錯,不過沒有能引起我興趣的新東西。
jsp高級程序設計
剛出版不久,還沒時間看,看目錄其內(nèi)容已經(jīng)超越了單純的JSP或者壓根不是講JSP的,有時間要看看。
java servlet & jsp經(jīng)典實例
"那些不喜歡理論而喜歡敲代碼的人可能更喜歡這樣完全用實例說話的書。
O'relly出版,基本上就是質量的保證。
如果你覺得很閑,學習沒有方向感。那就照著這本書一個實例一個實例的做下去吧。"
Java Web開發(fā)詳解
大致翻了一下,出發(fā)點很好,期望通過一本書逼迫程序員掌握web開發(fā)應有的知識,可是一上來先講XML,對初學者有點太難,而要靠一本書達到真正的精通那是不可能的。
JSP 編程指南(第三版)
簡單翻了一下,發(fā)現(xiàn)對于Taglib的講解明顯強于其他書籍,有些內(nèi)容是我以前還沒有掌握的。
java servlet2.3編程指南
沒看過,供參考。
Servlet Specification
Sun的文檔。所有開發(fā)web container的人都必須參照的根本性憲法。理論上來說,凡是specification規(guī)定的,廠商必須實現(xiàn),沒有規(guī)定的,可以有一定程度上的發(fā) 揮。不過實際上,還是有些廠商在某些規(guī)定的地方做了一些靈活處理,我所知道的一些地方都是方便開發(fā)人員了。
JSP Specification
跟上面servlet的一樣,不過這個的重要性就低多了,Web container的靈魂是servlet。
關于Encoding的東西
沒有這方面的系統(tǒng)的書籍可以推薦,如果誰知道有這樣的書請告訴我。我的這方面的知識來源于多本書籍的片斷和網(wǎng)絡。但它是如此的重要,合格的web開發(fā)人員必須掌握。
關于HTTP,Cookie,URL等的RFC
RFC相當于這些東西的specification。
Servlet與JSP Web表示層開發(fā)框架
"Web表示層開發(fā)框架有無數(shù)種,但是其中最成功的毫無疑問是Struts。
首先無論如何請先明確一點,Struts之類的僅僅是整個系統(tǒng)中表示層的框架而已。
除了Struts之外的表示層框架,都沒混到能單獨出書的地位,在下面<Tomcat Web開發(fā)及整合應用>的書中, 介紹了另一種表示層框架,WebWork,這可是下一代Struts的核心啊,難道你不想現(xiàn)在就看看么? 至于另一個比較有前途的新框架Spring MVC,留到與Spring這個真正的覆蓋全系統(tǒng)的框架一起學習吧。"
書名
精通struts
"這本孫衛(wèi)琴MM寫的書真的是集萬千優(yōu)點于一身,既適合入門又適合提高,思路還非常符合國人的特點,孫MM的文字組織功力真不是蓋的,一本本來相對比較生 澀的<Struts in Action>被重新組織后,變得如此親切可人。借struts的熱度,難怪大賣特賣。
如果說對于那些上面的基礎還沒打好的人學習Struts,并且想一生只買一本書的話,就是它了。"
JAKARTA STRUTS編程(第二版)
"對于上面的Web開發(fā)基礎相當牢靠的人來說,這本書才是真正的好書。
如果說<精通struts>能讓你迅速學會用Struts開發(fā),那么這本書則能夠直接了當?shù)母嬖V你如何按照架構的思維去理解Struts。叫做Thinking in Struts也許更能反映這種直接了當?shù)姆绞健?
實戰(zhàn)struts
"它絕對會成為一本暢銷書,如果沒有孫衛(wèi)琴MM的大量借鑒之作<精通struts>面世的話。
這本書的路數(shù)介于上面兩本之間,本來應該成為入門到精通的首選。可惜現(xiàn)在也只好拿來看看還有哪些東西剩下沒被借鑒了。"
Struts Web設計與開發(fā)大全
"沒看內(nèi)容。不理解明明有孫MM的書在泰山壓頂了,為什么它還要來趟這趟渾水。估計所有Struts的書加在一起也不會比孫MM的書賣得多。實際上我都懷疑,國內(nèi)作者出版的計算機書加起來都不會比孫MM的書賣得多。
也許這本書的與其它組件整合的部分能帶來一些亮色,那些喜歡實例的人會給點面子。"
用Tomcat學web開發(fā)
"實際上前面的很多書都應該已經(jīng)用過tomcat了,而這里的兩本書也不是單純的講tomcat,實際上包含了很多web開發(fā)的內(nèi)容。
因此什么時候使用這兩本書還真是個問題。
理論上來說,單純的使用這兩本書來學會web開發(fā)也是可能的,但我并不認為這是個好主意。在有限的篇幅內(nèi)塞入過多的內(nèi)容必然導致每一樣都不深不透,學的人也不過是囫圇吞棗而已。
不過由于很多書使用tomcat做為服務器,而本身對tomcat介紹很少,在學習過程中可能會遇到一些困難,那么備一本這樣的書參考也不錯。"
書名
Tomcat與java web開發(fā)技術詳解
"好像是孫衛(wèi)琴MM的第一本著作。在這本書中孫MM就展現(xiàn)出了超人一等的寫作功力和裁減能力。她比較好的把握了眾多內(nèi)容的分量。同時也注意了tomcat本身的一些東西。
這本書銷量也很好,如果沒有下面的新書,那么關于tomcat的書,這本是無敵的。"
Tomcat Web開發(fā)及整合應用
"整體結構的組織上借鑒了上面孫MM的書,嘿嘿,孫MM也被如此借鑒了一把,不知做何感想。
對比孫MM的書,這本書不但大大加強了tomcat的配置部分,還添加了很多內(nèi)容,文字組織也非常出色,除了價格因素和購買慣性,我看不出孫MM的書的優(yōu)勢了。
我在翻這本書的時候,發(fā)現(xiàn)自己在一篇已經(jīng)被網(wǎng)上廣泛轉載的文章里的一個結論是錯的,是因為我對tomcat的能力還不夠了解。雖然我并沒有對那個結論拍胸脯,但是上帝保佑看到我那篇文章的人能夠有機會看到這本書,不要再受誤導。"
成為有效率的開發(fā)者
書名
使用ANT進行JAVA開發(fā)
"這是一本關于ANT的書,又不僅是一本關于ANT的書。
我像推薦JUNIT IN Action一樣推薦這本書。
一個合格的開發(fā)團隊可能不采用其中的一些技術,但如果壓根都不知道這些技術,那就說不過去了。"
Ant極限編程
"在沒有上面那本書之前,這是我能找到的最好的ANT書了。
我從里面學到了很多很有用而直接了當?shù)腁NT技巧,實戰(zhàn)性很強。
看著這本書,參照上面那本,相信進步會更快。"
精通Eclipse
"如果你在使用Eclipse,如果你沒仔細研究過Eclipse的幫助,并且不打算費力去研究,
這本書是你必看的。"
Eclipse精要與高級開發(fā)技術
J2EE之JDBC
"現(xiàn)在的年代,直接用JDBC API已經(jīng)不太合時宜了,但是不了解底層,怎么能真正了解上層呢?
列出兩本書,供參考。"
書名
JDBC API教程與參考手冊
"唯一一本定位于JDBC API的書籍。內(nèi)容極其全面,甚至涵蓋到了JDBC3.0。
我自己也沒讀呢,呵呵。"
Java數(shù)據(jù)編程指南
在沒有上面這本書的時代,這是講JDBC最多的書了,不過內(nèi)容不夠專精,JDBC之外的東西太多,而且翻譯質量不好,最多可以泛讀參考。
J2EE之XML
書名
深入淺出XML
"絕對是我心目中那種夠薄、夠用的頂級入門好書。中國人自己寫的好書。
內(nèi)容干練,質量上乘。很有O'relly圖書的風范。偶們書店有本非賣品存貨。"
XML示例程序導學
"既然上一本書已絕版。選這本書入門也很不錯。
也符合夠薄,夠用的原則。"
XML揭秘-入門應用精通
"我就是用這本書學習的XML,做為入門書不算好書,只是個勉強及格。
但是對于學習整個XML家族還是很有指導意義的。"
XML從入門到精通
沒看過。因為上一本書已絕版,只能是這本書承擔起系統(tǒng)學習XML的責任了,也許比上面那本書還要好呢。
XSLT從入門到精通
XSL高級編程
沒看過。因為實際開發(fā)中XSL的機會本來就不多。從其他XML書籍中學到的基本上夠用了。
J2EE之J2EE
書名
精通EJB
"這本書其實是我在已經(jīng)掌握了EJB之后才看的。也因此才能體會到它的精彩。我看的是第二版的中文版,在看的過程中還特意參照了一下第一版的英文版(沒有 中文版),通過這種參照,可以解到EJB技術的變化,以及作者本人思路的變化。現(xiàn)在最新版本是第三版,把它與第二版對比一下,看看關注點發(fā)生了哪些變化, 也很有趣。
做為透徹理解EJB本身來說,這是一本相當好的書。但是它把核心完全放在EJB上而徹底忽視EJB支撐技術的做法實在讓人不可理解。我在看此書的時候就一直慶幸沒有用它做為J2EE的上手書籍。"
EJB2.0企業(yè)級應用程序開發(fā)
我當初在學習J2EE時的參考書之一。比較系統(tǒng)的涉及了EJB的支撐技術,和很多關鍵技術點。很多要點非常重要。
J2EE技術內(nèi)幕
我當初在學習J2EE時的參考書之一。比較系統(tǒng)的涉及了EJB的支撐技術,和很多關鍵技術點。很多要點非常重要。
J2EE服務器端高級編程
"如果做J2EE開發(fā),只能買一本書,那絕對是這本書。
實際上我的EJB上手就是從這本書開始的。我在書店瀏覽幾乎所有EJB書籍的時候,所有其他書籍關于EJB的定義都足有3-4行那么長,只有這本書說-EJB就是一個類,兩個接口和一個描述符。我毫不猶豫的買下了這本厚達1300多頁的書。
如果你以為全書都是這么簡潔明了,那就錯了,該書全書作者多達近20人,覆蓋了當時J2EE幾乎所有領域,幾乎每個領域的主題都達到了一個相當?shù)纳疃龋@真是一本不可思議的書。
這本書絕對不能算入門書,但是其中一些主題講解的透徹程度比之專門的書還要到位,幾乎你在開發(fā)中需要知道的細節(jié)他都寫到了,真不愧是程序員寫給程序員(P2P)的書。
然而看懂這本書可不是一件容易的事。先不提翻譯的問題,憑著咱深厚的閱讀理解猜測容錯能力,基本上可以應付。光是五花八門的運行環(huán)境和過于陡入云霄的深入主題就夠讓人望而止步了。
可以拿它做為一個標桿,隨時檢查一下還有多少東西看不懂,然后努力學習,呵呵。
偶們書店有本非賣品存貨。"
J2EE開發(fā)使用手冊
我沒細看內(nèi)容,大致翻了一下,應該屬于勉強過得去的那種。上面的書已絕版,系統(tǒng)的J2EE書籍鳳毛麟角,這本是無奈的選擇。
J2EE1.4標準教材
這個我也是大致翻了一下,屬于勉強都過不去的那種。雖然是Sun官方的Tutorial,全面覆蓋了J2EE的所有組件。但是內(nèi)容也太過簡單了啊,誰要是 能用這書學明白J2EE,那學習能力一定是超級強悍。也就是拿它當個checklist,大致了解一下各個J2EE組件的作用了。
EJB Specification
"跟Servlet specification一樣。了解底層必看的文檔。不過太長了,我始終也沒看完。
當然,看這個也可以忽略實體bean的部分。"
其他 specification
我只看過JNDI的。有興趣的多看吧。
J2EE之應用服務器
"像Tomcat之于web應用一樣,J2EE應用服務器是J2EE應用程序的運行環(huán)境。
當前三大主流應用服務器是Weblogic,Websphere,和JBoss。
類似于上面的Tomcat的書,你也可以通過講解應用服務器的書來學習J2EE,實際上,這樣更容易上手。
如果我反對這樣做的話,那理由也只能是擔心由此而來的不求甚解。當然我的建議是準備一本這樣的書參考,然后學習理論。
當然,內(nèi)容上能夠用來學習J2EE的,也只有weblogic的那三本。內(nèi)容都像weblogic server一樣親切可人。"
書名
J2EE應用與BEA Weblogic server(二版)
比較適合上手操作。初學J2EE和weblogic的人建議閱讀。
精通BEA Weblogic Server
定位比較混亂,搞不清它到底是想講開發(fā)還是講管理。內(nèi)容不錯,但是需要有經(jīng)驗的人才能弄明白重點何在。
BEA WebLogic Server 8.1大全
"在weblogic6.1的時代,有一本<weblogic寶典>,那是相當?shù)暮冒。?.1的時候一直在找一本能達到那個水準的8.1的書,一直沒有找到。
后來終于有了這本,不過我看的是英文的,這本中文譯本沒翻過。雖然其內(nèi)容多數(shù)也是從weblogic的文檔中來的,但是在組織水平上遠遠超過 weblogic文檔,而且也有相當多文檔中沒有的內(nèi)容,看到很多當年自己千辛萬苦四處挖掘出來的知識被這么一本書給囊括了,真是心疼花掉的時間啊。現(xiàn)在 能看到這本書的人真幸福。唯一的缺點就是太厚了。"
IBM Websphere studio J2EE應用開發(fā)
IBM Websphere應用服務器5.0系統(tǒng)管理
Jboss 4.0標準教材
Jboss管理與開發(fā)核心技術(第三版)
翻過一遍。內(nèi)容相當不錯,可惜一直沒機會仔細閱讀并且實踐。
分析與設計之UML
"如果沒有大量的開發(fā)經(jīng)驗空談分析與設計,無異于沙地起高樓。
但是做為開發(fā)人員,至少應該具有能夠閱讀設計文檔的能力。當前形勢下,使用UML表達設計已經(jīng)是不可逆轉的趨勢。
不過請記住,UML僅僅是表達設計的一套符號,會UML不代表會設計。
另外,UML發(fā)展迅速,且應用時間短,加上UML之前的OMT表示法跟UML非常像,再加上幾乎每個大牛都有自己習慣的一套慣用表達法,所以千萬不要只看 一本UML的書,或者上一次UML培訓課就認為學會了UML。那頂多是理論上的UML,實踐中,各種慣用法,加上錯誤用法,加上一些變態(tài)到極點的超高級用 法絕對能把你看暈。說得夸張一點,關于UML的書,類似的東西,能找出3本書畫成一樣的都難。
雖然我不主張去學去用那些復雜的用法,但是要想保證有能力看懂幾乎任意一張圖,必須廣泛閱讀,見識各種不同的用法。"
UML初學者指南
"夠薄,夠用。其實我已經(jīng)覺得它講得太多了。
不過如果再少點的話,就沒法出書了,呵呵。"
UML精粹
"本來這本書應該放在上面那本書之上的。
但是翻譯讓一向寬容的我也不得不憤怒了,如果是給高級的、有比較深厚UML功底的人看,到也罷了,可這是給入門者看的書啊,弄成這個樣子,讓他們以后怎么看別的書?"
UML with RationalRose
"Step by Step的用RationalRose畫UML的書,也可以稍帶著學一學UML。 這種方式也很好。
"
UML參考手冊 (第2版)
"這絕不是一本入門的書,甚至入門后也不能輕易看懂。
沒有UML寶典的年代里,只能看這個超級晦澀的官方參考手冊。
當看其它書產(chǎn)生疑惑的時候,搬出它來做個裁判。
當你多次做過這種裁判后,也許你就能明白為什么我會說,理論是理論,實踐是實踐。"
UML寶典
"當年市面上第一本講解UML2.0的書籍。也是目前我所見過的講解UML最系統(tǒng)的書。
更加難得的是,此書不但從理論上深入UML底層(這是其它書籍都沒有做到的),而且在UML的實際應用上也給出了相當準確的指導。
沒有這本書,相信會有很多UML的學習者要繼續(xù)在黑暗中摸索。"
其它關于UML的書
主要目的就是為了見識各種各樣的用法。
分析設計之能力培養(yǎng)
"一件有趣的事是,一個剛接觸分析設計的人和一個已經(jīng)非常善于分析設計的人差不多都會直接給出代碼(或者基于代碼的設計),而不是老老實實的按照先分析后設計的路子來。
然而盡管兩者從結果上看可能是一致的,但是背后的差異卻極其巨大,高手實際上是迅速跨越了分析和設計階段,基于經(jīng)驗經(jīng)過了各種初步的權衡給出的結果,重要 的是它是一個可以適應各種復雜程度的、可重復的過程。而初學者這種基于直覺的設計很難被應用在一個稍微復雜一點的場景中。
有個關于參禪的說法,頭十年見山是山,見水是水;中十年見山不是山,見水不是水;再十年見山還是山,見水還是水。
關于分析能力的培養(yǎng),基本上也是要經(jīng)歷這樣一個過程。在強制性的經(jīng)歷足夠多的分析過程之后才能收放自如的跨越整個分析設計過程。"
UML Java程序設計指南
"這本書在不少的地方有點極端。但是這種極端對于初學者走上正確的方向卻是相當?shù)闹匾?
一個是關于UML的應用。另一個是一個設計案例,這個例子可能會被不少人認為是腦子有病,但實際上這正是一個強制分析的過程,初學分析設計的人一定要學會這種抽象的思維能力。
記得幾年前參加一個sun的講師主持的分析設計的培訓,我迅速的給出了一個自以為很得意的設計,然而被評價為走得太快,那時很不忿,覺得這老師也不過而 而。然而在經(jīng)歷了很多的實際磨練之后,終于有一天意識到,那是一種多么重要的訓練啊,如果當初謙虛一點就不會走許多的彎路了。"
Enterprise Java with UML中文版
"如果說你實在覺得上一本書有些不夠親切,離你的思維習慣太遠,那就先從這本書入手吧。
這本書在任何一方面都應該不會入高手的眼,因為它實在是土得有點掉渣的感覺。
不過它的可貴之處在于,它勇敢的打破了所謂分析設計的神秘感,堅持用一套模式打天下,對于那些對分析設計壓根還摸不到方向感的人來說,這本書是一個很好的過渡。"
UML和模式應用
"幾年前我在學習分析設計的時候,看了大量的書籍,有很多蒙蒙朧朧的想法,卻一直難以把所有的知識形成一個完整清晰的體系,直到看到這本書。雖然我現(xiàn)在已 經(jīng)并不太認同它的一些觀念,主要是越來越死忠RUP的做法。但是對于思維體系完全沒有成型的初學者來說,這是一本必看的好書。
本書當前版本是第三版,我看過前兩版。但是最近新出的第三版還沒看。
推薦大家也是多個版本比較著看,也許你也會體會到作者的成長歷程,也許跟你曾經(jīng)的迷茫很有戚戚然的感覺呢。"
UML應用建模實踐過程
"一直很奇怪這本書為什么火不起來,難道就因為作者是個中國人?或者國人理解能力都超強,對于超級繁復的RUP都能輕易理解。
這本書的名字有點迷惑性,實際上這是一本關于過程的書,但是它關于UML的簡介部分做為入門也是足夠的到位。
當年我正對著RUP這個龐然大物無所適從的時候,這本書問世了,讀完之后,一個微型的RUP核心已經(jīng)了然于胸了。回頭再看RUP,直如庖丁解牛,勢如破竹。
如果先看這本書,再看上面的<UML和模式應用>,就會有很輕松的感覺,我當年可沒這好運氣,你們不要錯過哦。"
各種系統(tǒng)分析與設計的書
"盡管不少面向對象分析與設計的書其實也都是大師級的手筆,但是在現(xiàn)在看來已經(jīng)有點史前文明的意味了。
不過我們重在培訓自己的思維能力,所以千萬不要錯過跟隨大師思路的機會。"
分析設計之能力進階
"分析能力和設計能力實際上差不多是兩回事。
分析要求很好的抽象能力,而設計則既要求有比較強的抽象能力,也要求有很強的實現(xiàn)能力。
對技術沒有足夠深入的理解與認識,知識面不夠廣泛,或者不能夠寫出很好的代碼實現(xiàn),都是不可能做出真正的設計的。
換句話說,只有一種可選方案的設計不是真正的設計(但只有一種可行的方案是可能的)。"
重構:改善既有代碼的設計(中文版)
"Matin Flower寫的幾乎每一本書都是頂級好書,更絕的是每一本書幾乎都是一個獨立的領域。
其語言直白干練,直指問題核心。內(nèi)容則以實戰(zhàn)性理論展開,絕無那種空對空的泛泛之談。
這一本從編碼入手,幫助你從簡單代碼升華到優(yōu)秀設計。"
敏捷軟件開發(fā):原則、模式與實踐
"很多開發(fā)經(jīng)驗不多的人想學設計模式,都直奔四人幫的那本<設計模式>。
但實際上,第一這會浪費很多時間去理解相對比較生澀的內(nèi)容。第二以此種方式生硬的學模式很難真正提高設計能力。
設計模式不過是一些面向對象的設計原則加上一些根據(jù)具體開發(fā)語言的實際技巧而已。這本書正是教給你這些原則,和展示如何在實際的開發(fā)中捕捉需要應用模式的場合。
注意,市面上有兩本書的名字叫做<敏捷軟件開發(fā)>,一本是這個,以XP為名,實際上更偏重設計。另一本則是純粹關于XP的。"
設計模式
"這個名聲太大,不用我多廢話了。不過我還是要再次規(guī)勸一下那些一上來就看這本書的人,先看上面這本《敏捷軟件開發(fā):原則、模式與實踐 》吧。
其實它最大的貢獻是給模式起了個標準名字,這樣交流起來可以省卻了很多解釋的麻煩。
不過在實踐中還是有點問題,有些設計實際上完全應用的某個模式的思想,但是在實現(xiàn)上幾乎找不到書中對應代碼的影子。這有的時候是充分利用了某特定實現(xiàn)語言 的結果。而更多的時候,具體設計也不一定一板一眼的把每個模式的參與者全部單獨實現(xiàn),在發(fā)生這樣的退化時,有的模式就比較難區(qū)分了。"
設計模式精解
如果一定要從《設計模式》開始學習模式,請至少搭配一本這本書吧。無論如何請理解我的苦心:應該理解模式是從實際的需要出發(fā)被應用到設計中去的,而不是強行把模式應用到設計上。
Java與模式
"(在美)中國人的作品。雖然在模式上并沒有創(chuàng)新之處。但是其閃光之處在于,它鮮明的展示了模式不是僵化的,是有變種的。用這本書展示出來的才是活的模式,代價是言語上稍微有些啰嗦。
像《敏捷軟件開發(fā)一樣》,本書也把面向對象的原則單獨提出來做為一個重要部分,深刻理解并掌握這些原則實際上比學那些模式重要一百倍。"
分析設計之架構能力
上面的書提高的是局部設計的能力。下面的書籍則對于系統(tǒng)架構的把握有極大的幫助。
J2EE核心模式
"名氣幾乎與《設計模式》一樣響亮。沒的說,必看的書。
我的建議與對《設計模式》一樣,要以理解思想為主,不要生搬硬套。"
J2EE設計開發(fā)編程指南
"在今天,你可能不知道這本書,但不可能不知道spring framework。
其實就是因為這本書,才誕生了spring。Spring的核心正是這本書思想的集中體現(xiàn)。
這本書的中文版被翻譯得簡直不是一般的慘不忍睹。像我這種連邱仲潘都忍了n次的超級能容錯的人都忍受不了。
可以說,在J2EE的內(nèi)容不發(fā)生重大變化的情況下,幾乎所有關于J2EE架構設計需要理解掌握的基本原則,已經(jīng)全部包含在這里了。"
企業(yè)應用架構指南
上面這本是適用于J2EE的,而這一本書則是適用于更加概括的企業(yè)開發(fā)的。 想一下J2EE的含義正是Java企業(yè)開發(fā),這本書實際上在更加抽象的層次上為很多技術做了一個總結。
J2EE without EJB中文版
這本書是《J2EE設計開發(fā)編程指南》的作者寫的又一本好書。雖然在整體思想上并沒有超越《J2EE設計開發(fā)編程指南》,但是勝在比它要具體很多,全書圍繞spring framework來談論,也是學習spring framework的重要參考書。
領域驅動設計
"一種正在火熱中的設計思維。這種思路已經(jīng)在<企業(yè)應用架構指南>中有所涉及。
我還沒有閱讀此書,一是還沒有時間,二是出于對其實際可行性的懷疑--當然我不是說他不可實現(xiàn),而是相對于事物腳本的簡潔明了,在實際開發(fā)中它遇到的困難可能更多。<企業(yè)應用架構指南>中對于何時采用這種形式更加有利做了很好的分析。"
火熱技術
"這里列出了一些正在火熱的Java技術,他們將共同構筑起Java的明天。包括spring, hibernate, swt, ajax(這個不算java之列,但是與web相關)。
你可以直接學習這些新技術,但是請記住所謂的新技術很多時候是基于老技術的,透徹理解老技術才能真正掌握新技術,也會大大縮短掌握新技術的時間。"
精通Hibernate Java對象持久化技術詳解
深入淺出Hibernate
Hibernate開發(fā)及整合應用大全
精通spring
spring in action 中文版
SPRING框架高級編程
Ajax實戰(zhàn)
Ajax 修煉之道
ajax 基礎教程
Contributing to Eclipse中文版
需求與用例技術
"這部分放在這里有點不是很合適,只是有人對用例技術比較感興趣,所以列出來做個參考。
用例技術是被誤解誤用最多的。我的建議是,請至少要把這里列出來的書全部看完,順序不分先后,最后那本《特征驅動開發(fā)》實際上跟用例關系不大,而是類似于 XP一樣的開發(fā)方法論,但是我覺得可以供開闊思路用,不要簡單的被用例洗腦,與此類似的還有XP方法論中的User Story。
實際上我仍然很不放心,因為還有很多的網(wǎng)上的討論無法被包含在此列。"
有效需求實踐
軟件需求
軟件需求管理 用例方法
軟件需求管理 統(tǒng)一方法
用例建模
用例分析技術
編寫有效用例
特征驅動開發(fā)方法原理與實踐
經(jīng)常聽到或者在網(wǎng)上看到很多人在評論某本書很好或者很爛,很多人也把這些評論當作買與不買的依據(jù)。
據(jù)我所見,槍手的贊美之詞其實并不常見。而那種只言片語的負面評價卻經(jīng)常可以看到,在這些負面評價中,我也經(jīng)常會看到一些其實很不錯的書被毫無建設性的漫罵。
分析一下評價書不夠好的原因,有以下幾種
一種是書真的不好,多數(shù)都是抄襲和錯誤引導的那種,國內(nèi)作者的比較多見。
一種是覺得以他的水平覺得這書沒用。這樣的評論其實就是不夠實事求是。不同水平不同風格的人適應的書不同,一本書可能技術含量不高,但是對于特定人群來講絕對是一本好書。
一種是覺得翻譯得不好。其實有的書還不至于特別的不堪就被人罵得狗血噴頭了,我想說的是鉆這種牛角尖完全沒有必要,只要大致上意思能夠理解就OK了,既然 能看出來是錯了,那么也就說明能夠理解。有能力看英文原版的人畢竟不多,盡管技術書籍還是比較容易看懂,但有的英文原版看起來也的確很費力。 特別是那種內(nèi)容夠好,但是翻譯不好(說實話,翻得特別不好的書并不多)的書,需要自己去組織一下,考驗閱讀理解能力和技術基礎知識的時候到了。
一種是看見特定作譯者,出版社就罵的。可是就算是沙里淘金也可能有閃光的,不負責任的評論是不應該的。
最差勁的一種是實際上是因為自己的能力不足以看懂書的內(nèi)容,卻說書不好。
其實選書如小馬過河,適合的就是好的。不同的背景,不同的需要,應該有不同的選擇。比如什么都不會的時候,突然要做項目,這種時候如果去看那種從原理講起的,豈不是不合時宜。但如果時間比較從容,看看原理才會真正掌握一項技術。
2. 中文書還是外文書
中文書有兩種,一種是國內(nèi)的人寫的,一種是翻譯的。
先說國內(nèi)的人寫的。早期國內(nèi)書籍水平普遍比較低,基本上是一群自己也沒弄懂的人隨便找點資料粘貼出來的。
現(xiàn)在這種情況已經(jīng)大有改觀了,不是說那種粘貼的書少了,而是的確有很多優(yōu)秀的開發(fā)人員寫出了一些很好的書。
再有就是翻譯的書。絕大部分被翻譯到國內(nèi)的書本身都是相當不錯的書,可是由于翻譯人員水平的問題,或者根本不是做技術的人,或者那種老學究非得翻譯得與眾 不同,翻譯過的書大部分都會比原文失色一些。但是由于母語和英語在閱讀速度上的巨大差異,容忍這點失色絕大多數(shù)情況下都是值得的。何況,技術書籍又不是文 學作品,死扣字眼沒什么意義。
再說外文書。實際上技術書籍一般來說閱讀起來多數(shù)都不會很吃力,尤其是在你有了一定的背景知識之后。但是確實還是有一些作者寫出來東西比較難理解,不是說 老外就都擅長寫作的。一般來說,如果有中文版本,我都會看中文版的,沒有中文版又實在想看的才去看英文版。在新的術語比較多的情況下,最好要中英文參照著 看,這樣才能理解中文術語對應的英文術語。在中文版理解起來有疑問的情況下,也可以去參照一下英文版。不鼓勵在沒有積累足夠的術語基礎的情況下直接去讀英 文版。
3. 超越書籍
軟件開發(fā)是一門實踐性的工作。所謂 紙上得來終覺淺,絕知此事需躬行。只看書不實踐也是白費。
真正的高手看書很少,注意可不是很少看書。他們把更多的時間用在寫代碼、讀代碼和讀specification上。我又懶又笨,所以看了很多。
以前在CSDN上看到一個帖子,有人感覺學得很努力但是進步很小,另一個人回復說“你還缺乏把代碼反復修改一百遍的勇氣”。
深以為然。不要總急著學新東西,要先把手頭的知識吃透。
-------------------------------------
書名
"21天學通Java2(第二版)
21天學通Java 2(第3版)"
"如果你是一個初學者,想做一個快速而系統(tǒng)的Java入門,那么我推薦看這本書。
如果你還沒有系統(tǒng)的看過任何一本J2SE的書,比如下面列出的幾種,也不打算以后去看那么厚的書,那么也推薦看看這本書。
這本書本身內(nèi)容上并沒有特別出彩的地方,但是難得用這么短的篇幅覆蓋了常用Java技術的知識點,非常系統(tǒng)而且比較容易上手。
這本書市面上有兩個版本,第2版和第3版。對于入門來說,我更傾向于相對簡單的第2版。第3版適當增加了一些Web開發(fā)方面的技術,有點雞肋的感覺,不過對于初學者來說,多點見識也不錯。"
----
"Java 2核心技術(第6版) 卷I:基礎知識
最新 Java 2 核心技術 卷II:高級性能(V1.3)5E
JAVA 2核心技術 卷I:基礎知識(原書第7版)
JAVA 2核心技術 卷II:高級特性(原書第7版)"
評價:"我的第一本Java書籍就是本書的第4版。
如果只能選擇一本Java基礎編程書籍的話,那么毫無疑問應該是core java。這本書值得一行一行的去讀。
不過這本書往往把一些很重要的話隱藏在字里行間,不仔細閱讀的話,一不小心就會漏掉很有價值的話,或者你在剛開始的時候壓根就沒有能力意識到它的價值。
現(xiàn)在市場上可以見到卷一的第6版,卷2的第5版,以及第7版的卷一卷二。
如果做入門學習,推薦看第6版的卷一,因為第7版是基于Java5的,Java5由于引入了泛型和自動裝箱等能力,容易使初學者把關注點偏離Java語言 的核心能力,我一向認為對初入門者,信息一定要精干,不必要的復雜信息最好藏起來。如果已經(jīng)對Java很熟練了,或者在面向對象編程方面已經(jīng)有比較深的認 識的話,那么擁有一套第7版是應該的。"
--------------------------------------
Java程序設計教程(第五版)
"如果你對java核心技術那種四平八穩(wěn)的理論敘述感到無所適從的話,那么這本奶媽一樣的Java書籍可能是一個適合你的選擇。雖然我本人非常不喜歡這種 過于細膩的風格,但是也不得不承認這是一本足夠優(yōu)秀的教材。在培養(yǎng)面向對象的思維方面是這本書比較突出的特點。做為大學生學習更適合一些,想要自己往快了 跑的人看這書怕是要急死。
"
-------------------------------------
Java 2教程(第六版)
如果你實在覺得Core Java的GUI部分是在浪費錢財,同時象我一樣不喜歡Java程序設計教程這本書,那么這本書應該是你的選擇了。這本書以合理的厚度,合理的詳略程度講解了合理分量的Java技術點。可以認為是21天學通Java2的火力加強版。
-------------------------------------
Java語言程序設計(原書第3版)
"這本書難得是個華人寫的(雖然是用英語寫然后再由國內(nèi)的人翻譯過來),放在這里支持一下。
總體來說,相對于上面的書,定位比較尷尬。
在個別地方還是有其他書沒有直接覆蓋到的獨特的亮色。可以泛讀。"
--------------------------------------
"java編程思想(第二版)
java編程思想(第三版)"
"這是一本很有意思的書。
它是入門的書嗎?是的,如果你的計算機科學基礎知識還算OK的話。不是,如果你壓根就沒有其他任何面向對象語言(直接說吧最好就是C++)編程的足夠經(jīng)驗的話。
它算是一本系統(tǒng)的講述Java的書嗎?勉強吧。或者基本上不算。它以一種神出鬼沒式的方式帶你進入Java語言的世界,然后近似于隨機的選擇一些中國旅游景點用英文介紹給你聽。
那為什么這么多人說它是一本好書?因為說它好的人在看這本書之前,計算機基礎知識和某一門面向對象的語言(最好是C++)已經(jīng)相當?shù)腛K了,它能夠以一種最接近C++程序員口味的方式把C++程序員迅速領入Java語言的世界,那個時代可是C++程序員的天下啊。
那么,它不算好書嘍?不,它對于厘清初學Java的人很多重要觀念上的幫助是非常非常大的。而且,與java核心技術不同,它明確的把作為一個合格的 java程序員最最應該弄透的知識點以直接了當?shù)姆绞教岢鰜恚欣诜直妗R虼耍阒辽賾撛谀硞€合適的時候讀上一兩遍。
據(jù)說看完這本書就算高手了,是嗎?有可能,如果你能不斷的把學到的 東西運用到代碼里去的話。否則也就是java基礎理論合格,部分過于合格,呵呵。
理論終歸只是理論,實踐中還有很多的技巧,下面的書才是成長為編碼高手的踏腳石。
現(xiàn)在市面上有第二版和第三版,看哪個好呢?
第二版是侯捷翻譯的,無數(shù)侯fans說好,有人因此專找第二版,對此我持保留意見。我認為,作為面向大陸的譯本,不能在術語上尊重大陸習慣,就是不尊重大陸的讀者。第二版和第三版在一些我認為無所謂的內(nèi)容上各有取舍,自己看實際和習慣選吧,反正最核心的東西都在。
不過,關于Exception的使用,作者在第3版對之前的想法做了一個否定,這一段值得單獨看看。最好能參照他以前的想法看(這個我比較傾向看第一版,找不到的話就第二版吧)"
--------------------------------------------
成為優(yōu)秀的J2SE開發(fā)人員
書名
JUNIT in Action中文版
不看此書,不可能成為合格的開發(fā)人員。當然你可能不能一下子接受所有的內(nèi)容,隨著能力的提高慢慢學吧。
Effective Java中文版
除非你在編程方面極有天賦,或者你寧愿去鉆研很多的優(yōu)秀代碼,沒看過這本書的人要想成為一個優(yōu)秀的J2SE開發(fā)人員簡直不可想象。我承認這話可能有點過分,那就過分吧。
Practical Java(中文版)
OK,如果你能很輕松的理解Effective Java并且心有戚戚焉, 那就沒有必要看這本書了。如果不是這樣, 先把這本書看明白了再說。
高質量 Java 程序設計
"雖然這本書的作者里比較惡心的掛了一個無謂的林銳,雖然作者是兩個年輕的中國人。但是這本書的內(nèi)容絕對不會讓人失望。如果說上面兩本書從老外程序員深厚 的開發(fā)基礎的角度提出了一些有效的實踐,那么這本書則從年輕的中國程序員的角度給出了很多相當?shù)轿欢猩疃鹊闹v解。當然,全書的選材角度可能不太一致,深 淺不一,但這絲毫不影響它的精彩。
可惜,由于乏人喝彩,這本書目前已經(jīng)絕版了。"
"Java Pitfalls
More Java Pitfalls中文版"
"如果說effective java目標是讓你成長為卓越,那么這兩本書的實際功用應該是讓你少犯迷糊。
這兩本書看了就是為了長見識,畢竟自己編程沒那么多,那么多看看別人可能出的問題也就相當于自己編了很多程序。"
JAVA解惑
"Effective Java的作者寫的書,剛剛出版。
我還沒來得急仔細看,可是隨手翻了幾個故事,發(fā)現(xiàn)自己的Java算是白學了:(
談不上很實用,但是對于了解Java語言規(guī)范很有幫助。"
JAVA實例技術手冊
"如果你覺得上面的書過于理論化,對你來說太抽象,或者,你覺得很閑,學習沒有方向感。那就照著這本書一個實例一個實例的做下去吧。
"
javaalmanac.com
"都是很小的一些代碼片斷,用于展示java API的實例用法。
你一定要把它放在收藏夾里,做為編碼的參考。
我曾經(jīng)有一本印刷版的<Java Developers ALMANAC 中文版>,可惜不知道弄到哪里去了:("
透徹理解J2SE
書名
深入Java虛擬機(原書第2版)
雖然看這個其實并不能讓你成為編碼上的高手,但是有了這個基礎,你再次回頭去看以前看過的書籍,會發(fā)現(xiàn)你的認識會上一個臺階,很多以前難以理解的問題迎刃而解。
JVM Specification
這個不是書籍,而是Sun的文檔。如果你放著上面講解透徹,比較容易理解的中文書不想看,那么就看看這個原滋原味的吧
Java Language Specication
這個不是書籍,而是Sun的文檔。不管能看明白多少,至少是一定要看的,而且要和JVM Specification參照著看
Tuning Garbage Collection with the 1.3.1 Java Virtual Machine
這個不是書籍,而是Sun的文檔。如果你沒有運氣看過《高質量 Java 程序設計》,那么看看這個文檔自己彌補一點算一點吧。
其他J2SE話題
"關于J2SE還有一些對于企業(yè)應用開發(fā)來說(尤其是現(xiàn)在web開發(fā)甚囂塵上的年代)相對冷僻一點的話題。
在上面也沒有列出一本關于Java GUI的專門的書。除了我本人在GUI開發(fā)上的實際經(jīng)驗近乎于0的因素之外。
一方面還是因為Java核心技術,甚至其它一些GUI內(nèi)容更少的書中的內(nèi)容已經(jīng)基本上能應付一般的開發(fā)需要了。
另一方面,關于GUI成系統(tǒng)的書少得可憐,曾經(jīng)有一套相當權威的Java圖形技術,不過已經(jīng)絕版了。
這里列出來僅供參考。"
Java線程編程
簡單看過一些,很不錯的書,大概入門到中級的水準。
Java多線程設計模式
"真是一本好書啊,以前在各處看到的多線程程序寫法在這里得到了集中講解。
不過由于這方面的編程經(jīng)驗比較少,很多東西看過就忘了。"
Java網(wǎng)絡編程
沒看過,不過看目錄不錯的樣子,O'relly的書基本上質量也是有保障的。
Java網(wǎng)絡編程技術內(nèi)幕
"書真是好書啊,可惜基于的Java版本太老了點,即使看這書也別照著學。
不過原始自有原始的用處,越原始的東西越接近底層原理。"
深入Java 2平臺安全--體系架構、API設計和實現(xiàn)(第二版)
Sun中國研究院院長的著作。曾經(jīng)企圖看這書,可是我在java安全模型上的認識還差得太遠,加上這書寫得比較晦澀,怎么也看不進去,放棄。
----------------
J2EE之Web開發(fā)
Web開發(fā)基礎
書名
循序漸進HTML與XHTML教程
HTML是Web開發(fā)的絕對基礎知識。看這種書的主要目的是打好HTML的基礎,很多做了很長時間web開發(fā)的人其實壓根都沒系統(tǒng)的看過HTML的書。市面上很難找到HTML系統(tǒng)全面的書,沒辦法,這本還算相當?shù)臏惡狭恕?
CSS的書
關于CSS的書,國內(nèi)市場上沒有能令人滿意的。很久以前有過一本CSS權威指南,學術味太濃了,現(xiàn)在也絕版了。不過關于CSS的書,日本有很多非常不錯的書。
任何javascript的入門書
通過野路子也能學會基本的javascript用法。低水平應用多數(shù)情況下也夠用了。但還是建議看看書吧。不過javascript的入門到中級的書真是 五花八門,成系統(tǒng)的少之又少,大多數(shù)都是奇技淫巧,自己挑能看懂的亂看吧,因為除了下面要介紹的兩本書,其他的都遠不夠系統(tǒng)。
WEB設計技術手冊
"各種關于Web開發(fā)的其他一些零亂的知識可以從這里學到,想從別的地方學到還真不太容易。
自己挑著不知道的東西看吧。"
Dreamwaver MX互動網(wǎng)頁圣經(jīng)
通過Dreamwaver你可以快速學習到很多HTML和CSS的規(guī)范用法。建議掌握。這里列這本書,只不過是因為我恰好看到了它,內(nèi)容還算合格,厚薄也還合理。
WEBMASTER技術手冊
"你可以把這本書做為一個checklist,看看你的web開發(fā)基礎是否合格。
這本書系統(tǒng)的涉及了做為一個web開發(fā)人員所應掌握的基礎知識。"
Web開發(fā)進階
書名
Javascript寶典
"我知道有一些人對XX寶典呲之以鼻,認為沒有技術含量。但是,我發(fā)現(xiàn)做為開發(fā)人員,最需要放在手邊的那種書還真的就是寶典系列。
如果你想快速準確系統(tǒng)的掌握javascript語言,舍此書無它。"
Javascript權威指南
"對于真正的Javascript語言的核心,除本書之外,我沒在其他任何書里看到過。
不看此書,不可能成為高手。"
MSDN web開發(fā)部分
"這個不是書。坦白說我也從來都沒有系統(tǒng)的看全過。
由于微軟對DHTML,CSS,JScript都有很多獨到的創(chuàng)新,除了這里,其他地方是學不到的。"
Mozilla的web開發(fā)人員指南
"首先,火狐異軍突起,要加以重視。其次,在對于很多標準的支持上,火狐比IE要合格得多。
這個站點匯集了所有必要的正規(guī)規(guī)范。不看這里,會導致把IE的土匪路子誤認為是正規(guī)軍 - 盡管得承認,那些野路子在很多時候真的是貼心啊。"
apache server2.0技術參考大全
"理解web服務器背后的秘密,會對理解web開發(fā)中的一些東西有很大的助益。Apache server幾乎就是webserver的代名詞,它的配置風格幾乎是其他werbserver的標準模版。理解了Apache,也就理解了絕大多數(shù)的webserver。
我接觸apache時看的是配置1.0的書,那書已經(jīng)絕版, 再說早已經(jīng)是apach2.0的時代,只能看這個了。
不過我還是那種觀點,舊版的往往更適合入門。1.X版的配置方式雖然比較零亂,但是勝在功能少,簡單,學習起來也容易。"
Servlet與JSP Web開發(fā)基礎
"在這里我陷入一個困境,因為我發(fā)現(xiàn)自己無法推薦一本單一的書既能夠滿足那些渴望快速掌握JSP的人的迫切愿望,又能消除我對由此而導致的不求甚解的擔心。
同時,在學習的順序問題上也存在問題。既然是多本書,是應該一本接一本的看?還是同時看?不同的人可能會有不同的選擇。
大體上來講,我個人比較喜歡把不同的書放在一起比較著看,這樣我能夠迅速的完成既能入門干活,又能初步掌握原理的任務。
其實多本書參照還有一個好處是,一旦一本書出現(xiàn)錯誤,立刻就可以用另一本的知識加以糾正。
我在初學JSP的時候,同時在看5本書,三本講JSP的,一本講Servlet的,一本講Servlet&JSP,幾乎囊括了當時市面上所有相關的書,呵呵。
還有一點要提醒,由于JSP和Servlet發(fā)展迅速,不同版本間的某些語法并不一致,好在初學者接觸到這些不一致的地方比較少。
問題比較多而又容易碰到的地方一個是在taglib,包括JSTL部分,一個是配置文件部分。
這里提醒大家,如果書中使用哪個版本的服務器,千萬不要自做主張使用更新版本的(尤其是Tomcat)。
從網(wǎng)上找到的代碼啥的也不一定能在哪個服務器上都沒有錯誤。"
書名
jsp應用開發(fā)詳解(第二版)
"一般這樣的快速入門書籍,國內(nèi)作者的都是首選,他們實在是太了解我們的心態(tài)了。
但是我仍然找不出一本足夠精要并且能迅速上手干活的書。太多的初學者喜歡大量的實例,尤其是所謂完整的實例。最好還加上非常流行的struts啥的。為了活路,我們的作者也不得不把這些東西弄進去。
萬般無奈,就這本吧,上手還是不錯的,實戰(zhàn)性也比較強。后面struts啥的,先別看了。
但是我聽過若干人說,學會這本書,JSP就不用看別的了,我暈。"
jsp應用開發(fā)技術
"也是一本相當不錯的JSP入門書,還給出了JSP開發(fā)人員的學習路徑,不知道為什么關注的人比較少,可能是不如<jsp應用開發(fā)詳解>厚吧:(。
太多人想一生只買一本書了。 不過我入門喜歡薄的。
關于里面struts啥的內(nèi)容,同上,先別看了。"
jsp2.0技術手冊
"相對于上兩本的大雜燴,這本書能干凈一些,是那種我喜歡的入門書風格,作者是兩個臺灣同胞,行文也是不少臺灣書籍那種平易近人的風格。
我曾經(jīng)以為終于發(fā)現(xiàn)了一本JSP的終極入門書籍,可是仔細翻閱之后還是很猶豫。
這兩個作者是經(jīng)驗相對來說并不足夠了(其中一個號稱SUN的講師,估計是掛羊頭賣狗肉),卻偏偏喜歡下結論式的寫作,盡管我也認為對于入門者來說,稍稍接受一些略有偏差的錯誤結論并沒有多大害處,但仍然害怕有人因此而受到誤導,誰讓一生只買一本書的人太多呢。
如果不是因為這個原因,我其實更推薦使用這本書入門,只是有個前提,你只要照著書里的進度學用法就是了,千萬別把結論當真。"
servlet與jsp核心編程
"不學Servlet不可能真正懂JSP。可惜,在這個浮躁的年代,誰還管那個。尤其是在類似于Struts之類框架流行的時代,寫servlet的機會已經(jīng)微乎其微了。
但是的但是啊,如果不學會Servlet,那么可以說除了會用JSP(實際上也就是HTML)寫一些界面之外,你不大可能在Java web開發(fā)上更進一步了。"
SCWCD認證專家應考指南
"首先,這本書相當于提供了一份checklist,列出了做為一個Java web developer所應該掌握的基本知識。
其次,這本書寫得非常平易近人,通過很多實驗來引導讀者。
不過,由于這本書完成得比較早了,最新的JSP2.0和Servlet2.4的內(nèi)容并沒有包含在內(nèi)。好在所謂的新特性只要做一點簡單的增量學習就可以了,如果你真正掌握了這本書的知識的話,學習那些新特性應該花費不到1天的時間就夠了。"
servlet與jsp權威指南
servlet與jsp核心編程作者的又一本好書。 可惜內(nèi)容上與servlet與jsp核心編程稍有些重疊。但是這本書里已經(jīng)開始涉及一些高級主題。可以用做學習<SCWCD認證專家應考指 南>時的參考書,畢竟應考指南那本書很多內(nèi)容由于篇幅的限制,遠遠談不上深入。
Servlet與JSP Web開發(fā)進階
"其實,如果你已經(jīng)真正掌握了上面的基礎,那么到了這個階段,應該有能力自己選書了。
而這些書能真正帶給你新知識的機會也很少了,這些書籍能帶給你的就是實踐上的東西了。
或者,如果你還沒有真正掌握上面的基礎的話,這里再給一個實踐的機會。
坦白說,這里列出的書,大部分我都沒有仔細看過,僅供參考。"
書名
jsp設計
沒看過,看目錄應該還不錯,不過沒有能引起我興趣的新東西。
jsp高級程序設計
剛出版不久,還沒時間看,看目錄其內(nèi)容已經(jīng)超越了單純的JSP或者壓根不是講JSP的,有時間要看看。
java servlet & jsp經(jīng)典實例
"那些不喜歡理論而喜歡敲代碼的人可能更喜歡這樣完全用實例說話的書。
O'relly出版,基本上就是質量的保證。
如果你覺得很閑,學習沒有方向感。那就照著這本書一個實例一個實例的做下去吧。"
Java Web開發(fā)詳解
大致翻了一下,出發(fā)點很好,期望通過一本書逼迫程序員掌握web開發(fā)應有的知識,可是一上來先講XML,對初學者有點太難,而要靠一本書達到真正的精通那是不可能的。
JSP 編程指南(第三版)
簡單翻了一下,發(fā)現(xiàn)對于Taglib的講解明顯強于其他書籍,有些內(nèi)容是我以前還沒有掌握的。
java servlet2.3編程指南
沒看過,供參考。
Servlet Specification
Sun的文檔。所有開發(fā)web container的人都必須參照的根本性憲法。理論上來說,凡是specification規(guī)定的,廠商必須實現(xiàn),沒有規(guī)定的,可以有一定程度上的發(fā) 揮。不過實際上,還是有些廠商在某些規(guī)定的地方做了一些靈活處理,我所知道的一些地方都是方便開發(fā)人員了。
JSP Specification
跟上面servlet的一樣,不過這個的重要性就低多了,Web container的靈魂是servlet。
關于Encoding的東西
沒有這方面的系統(tǒng)的書籍可以推薦,如果誰知道有這樣的書請告訴我。我的這方面的知識來源于多本書籍的片斷和網(wǎng)絡。但它是如此的重要,合格的web開發(fā)人員必須掌握。
關于HTTP,Cookie,URL等的RFC
RFC相當于這些東西的specification。
Servlet與JSP Web表示層開發(fā)框架
"Web表示層開發(fā)框架有無數(shù)種,但是其中最成功的毫無疑問是Struts。
首先無論如何請先明確一點,Struts之類的僅僅是整個系統(tǒng)中表示層的框架而已。
除了Struts之外的表示層框架,都沒混到能單獨出書的地位,在下面<Tomcat Web開發(fā)及整合應用>的書中, 介紹了另一種表示層框架,WebWork,這可是下一代Struts的核心啊,難道你不想現(xiàn)在就看看么? 至于另一個比較有前途的新框架Spring MVC,留到與Spring這個真正的覆蓋全系統(tǒng)的框架一起學習吧。"
書名
精通struts
"這本孫衛(wèi)琴MM寫的書真的是集萬千優(yōu)點于一身,既適合入門又適合提高,思路還非常符合國人的特點,孫MM的文字組織功力真不是蓋的,一本本來相對比較生 澀的<Struts in Action>被重新組織后,變得如此親切可人。借struts的熱度,難怪大賣特賣。
如果說對于那些上面的基礎還沒打好的人學習Struts,并且想一生只買一本書的話,就是它了。"
JAKARTA STRUTS編程(第二版)
"對于上面的Web開發(fā)基礎相當牢靠的人來說,這本書才是真正的好書。
如果說<精通struts>能讓你迅速學會用Struts開發(fā),那么這本書則能夠直接了當?shù)母嬖V你如何按照架構的思維去理解Struts。叫做Thinking in Struts也許更能反映這種直接了當?shù)姆绞健?
實戰(zhàn)struts
"它絕對會成為一本暢銷書,如果沒有孫衛(wèi)琴MM的大量借鑒之作<精通struts>面世的話。
這本書的路數(shù)介于上面兩本之間,本來應該成為入門到精通的首選。可惜現(xiàn)在也只好拿來看看還有哪些東西剩下沒被借鑒了。"
Struts Web設計與開發(fā)大全
"沒看內(nèi)容。不理解明明有孫MM的書在泰山壓頂了,為什么它還要來趟這趟渾水。估計所有Struts的書加在一起也不會比孫MM的書賣得多。實際上我都懷疑,國內(nèi)作者出版的計算機書加起來都不會比孫MM的書賣得多。
也許這本書的與其它組件整合的部分能帶來一些亮色,那些喜歡實例的人會給點面子。"
用Tomcat學web開發(fā)
"實際上前面的很多書都應該已經(jīng)用過tomcat了,而這里的兩本書也不是單純的講tomcat,實際上包含了很多web開發(fā)的內(nèi)容。
因此什么時候使用這兩本書還真是個問題。
理論上來說,單純的使用這兩本書來學會web開發(fā)也是可能的,但我并不認為這是個好主意。在有限的篇幅內(nèi)塞入過多的內(nèi)容必然導致每一樣都不深不透,學的人也不過是囫圇吞棗而已。
不過由于很多書使用tomcat做為服務器,而本身對tomcat介紹很少,在學習過程中可能會遇到一些困難,那么備一本這樣的書參考也不錯。"
書名
Tomcat與java web開發(fā)技術詳解
"好像是孫衛(wèi)琴MM的第一本著作。在這本書中孫MM就展現(xiàn)出了超人一等的寫作功力和裁減能力。她比較好的把握了眾多內(nèi)容的分量。同時也注意了tomcat本身的一些東西。
這本書銷量也很好,如果沒有下面的新書,那么關于tomcat的書,這本是無敵的。"
Tomcat Web開發(fā)及整合應用
"整體結構的組織上借鑒了上面孫MM的書,嘿嘿,孫MM也被如此借鑒了一把,不知做何感想。
對比孫MM的書,這本書不但大大加強了tomcat的配置部分,還添加了很多內(nèi)容,文字組織也非常出色,除了價格因素和購買慣性,我看不出孫MM的書的優(yōu)勢了。
我在翻這本書的時候,發(fā)現(xiàn)自己在一篇已經(jīng)被網(wǎng)上廣泛轉載的文章里的一個結論是錯的,是因為我對tomcat的能力還不夠了解。雖然我并沒有對那個結論拍胸脯,但是上帝保佑看到我那篇文章的人能夠有機會看到這本書,不要再受誤導。"
成為有效率的開發(fā)者
書名
使用ANT進行JAVA開發(fā)
"這是一本關于ANT的書,又不僅是一本關于ANT的書。
我像推薦JUNIT IN Action一樣推薦這本書。
一個合格的開發(fā)團隊可能不采用其中的一些技術,但如果壓根都不知道這些技術,那就說不過去了。"
Ant極限編程
"在沒有上面那本書之前,這是我能找到的最好的ANT書了。
我從里面學到了很多很有用而直接了當?shù)腁NT技巧,實戰(zhàn)性很強。
看著這本書,參照上面那本,相信進步會更快。"
精通Eclipse
"如果你在使用Eclipse,如果你沒仔細研究過Eclipse的幫助,并且不打算費力去研究,
這本書是你必看的。"
Eclipse精要與高級開發(fā)技術
J2EE之JDBC
"現(xiàn)在的年代,直接用JDBC API已經(jīng)不太合時宜了,但是不了解底層,怎么能真正了解上層呢?
列出兩本書,供參考。"
書名
JDBC API教程與參考手冊
"唯一一本定位于JDBC API的書籍。內(nèi)容極其全面,甚至涵蓋到了JDBC3.0。
我自己也沒讀呢,呵呵。"
Java數(shù)據(jù)編程指南
在沒有上面這本書的時代,這是講JDBC最多的書了,不過內(nèi)容不夠專精,JDBC之外的東西太多,而且翻譯質量不好,最多可以泛讀參考。
J2EE之XML
書名
深入淺出XML
"絕對是我心目中那種夠薄、夠用的頂級入門好書。中國人自己寫的好書。
內(nèi)容干練,質量上乘。很有O'relly圖書的風范。偶們書店有本非賣品存貨。"
XML示例程序導學
"既然上一本書已絕版。選這本書入門也很不錯。
也符合夠薄,夠用的原則。"
XML揭秘-入門應用精通
"我就是用這本書學習的XML,做為入門書不算好書,只是個勉強及格。
但是對于學習整個XML家族還是很有指導意義的。"
XML從入門到精通
沒看過。因為上一本書已絕版,只能是這本書承擔起系統(tǒng)學習XML的責任了,也許比上面那本書還要好呢。
XSLT從入門到精通
XSL高級編程
沒看過。因為實際開發(fā)中XSL的機會本來就不多。從其他XML書籍中學到的基本上夠用了。
J2EE之J2EE
書名
精通EJB
"這本書其實是我在已經(jīng)掌握了EJB之后才看的。也因此才能體會到它的精彩。我看的是第二版的中文版,在看的過程中還特意參照了一下第一版的英文版(沒有 中文版),通過這種參照,可以解到EJB技術的變化,以及作者本人思路的變化。現(xiàn)在最新版本是第三版,把它與第二版對比一下,看看關注點發(fā)生了哪些變化, 也很有趣。
做為透徹理解EJB本身來說,這是一本相當好的書。但是它把核心完全放在EJB上而徹底忽視EJB支撐技術的做法實在讓人不可理解。我在看此書的時候就一直慶幸沒有用它做為J2EE的上手書籍。"
EJB2.0企業(yè)級應用程序開發(fā)
我當初在學習J2EE時的參考書之一。比較系統(tǒng)的涉及了EJB的支撐技術,和很多關鍵技術點。很多要點非常重要。
J2EE技術內(nèi)幕
我當初在學習J2EE時的參考書之一。比較系統(tǒng)的涉及了EJB的支撐技術,和很多關鍵技術點。很多要點非常重要。
J2EE服務器端高級編程
"如果做J2EE開發(fā),只能買一本書,那絕對是這本書。
實際上我的EJB上手就是從這本書開始的。我在書店瀏覽幾乎所有EJB書籍的時候,所有其他書籍關于EJB的定義都足有3-4行那么長,只有這本書說-EJB就是一個類,兩個接口和一個描述符。我毫不猶豫的買下了這本厚達1300多頁的書。
如果你以為全書都是這么簡潔明了,那就錯了,該書全書作者多達近20人,覆蓋了當時J2EE幾乎所有領域,幾乎每個領域的主題都達到了一個相當?shù)纳疃龋@真是一本不可思議的書。
這本書絕對不能算入門書,但是其中一些主題講解的透徹程度比之專門的書還要到位,幾乎你在開發(fā)中需要知道的細節(jié)他都寫到了,真不愧是程序員寫給程序員(P2P)的書。
然而看懂這本書可不是一件容易的事。先不提翻譯的問題,憑著咱深厚的閱讀理解猜測容錯能力,基本上可以應付。光是五花八門的運行環(huán)境和過于陡入云霄的深入主題就夠讓人望而止步了。
可以拿它做為一個標桿,隨時檢查一下還有多少東西看不懂,然后努力學習,呵呵。
偶們書店有本非賣品存貨。"
J2EE開發(fā)使用手冊
我沒細看內(nèi)容,大致翻了一下,應該屬于勉強過得去的那種。上面的書已絕版,系統(tǒng)的J2EE書籍鳳毛麟角,這本是無奈的選擇。
J2EE1.4標準教材
這個我也是大致翻了一下,屬于勉強都過不去的那種。雖然是Sun官方的Tutorial,全面覆蓋了J2EE的所有組件。但是內(nèi)容也太過簡單了啊,誰要是 能用這書學明白J2EE,那學習能力一定是超級強悍。也就是拿它當個checklist,大致了解一下各個J2EE組件的作用了。
EJB Specification
"跟Servlet specification一樣。了解底層必看的文檔。不過太長了,我始終也沒看完。
當然,看這個也可以忽略實體bean的部分。"
其他 specification
我只看過JNDI的。有興趣的多看吧。
J2EE之應用服務器
"像Tomcat之于web應用一樣,J2EE應用服務器是J2EE應用程序的運行環(huán)境。
當前三大主流應用服務器是Weblogic,Websphere,和JBoss。
類似于上面的Tomcat的書,你也可以通過講解應用服務器的書來學習J2EE,實際上,這樣更容易上手。
如果我反對這樣做的話,那理由也只能是擔心由此而來的不求甚解。當然我的建議是準備一本這樣的書參考,然后學習理論。
當然,內(nèi)容上能夠用來學習J2EE的,也只有weblogic的那三本。內(nèi)容都像weblogic server一樣親切可人。"
書名
J2EE應用與BEA Weblogic server(二版)
比較適合上手操作。初學J2EE和weblogic的人建議閱讀。
精通BEA Weblogic Server
定位比較混亂,搞不清它到底是想講開發(fā)還是講管理。內(nèi)容不錯,但是需要有經(jīng)驗的人才能弄明白重點何在。
BEA WebLogic Server 8.1大全
"在weblogic6.1的時代,有一本<weblogic寶典>,那是相當?shù)暮冒。?.1的時候一直在找一本能達到那個水準的8.1的書,一直沒有找到。
后來終于有了這本,不過我看的是英文的,這本中文譯本沒翻過。雖然其內(nèi)容多數(shù)也是從weblogic的文檔中來的,但是在組織水平上遠遠超過 weblogic文檔,而且也有相當多文檔中沒有的內(nèi)容,看到很多當年自己千辛萬苦四處挖掘出來的知識被這么一本書給囊括了,真是心疼花掉的時間啊。現(xiàn)在 能看到這本書的人真幸福。唯一的缺點就是太厚了。"
IBM Websphere studio J2EE應用開發(fā)
IBM Websphere應用服務器5.0系統(tǒng)管理
Jboss 4.0標準教材
Jboss管理與開發(fā)核心技術(第三版)
翻過一遍。內(nèi)容相當不錯,可惜一直沒機會仔細閱讀并且實踐。
分析與設計之UML
"如果沒有大量的開發(fā)經(jīng)驗空談分析與設計,無異于沙地起高樓。
但是做為開發(fā)人員,至少應該具有能夠閱讀設計文檔的能力。當前形勢下,使用UML表達設計已經(jīng)是不可逆轉的趨勢。
不過請記住,UML僅僅是表達設計的一套符號,會UML不代表會設計。
另外,UML發(fā)展迅速,且應用時間短,加上UML之前的OMT表示法跟UML非常像,再加上幾乎每個大牛都有自己習慣的一套慣用表達法,所以千萬不要只看 一本UML的書,或者上一次UML培訓課就認為學會了UML。那頂多是理論上的UML,實踐中,各種慣用法,加上錯誤用法,加上一些變態(tài)到極點的超高級用 法絕對能把你看暈。說得夸張一點,關于UML的書,類似的東西,能找出3本書畫成一樣的都難。
雖然我不主張去學去用那些復雜的用法,但是要想保證有能力看懂幾乎任意一張圖,必須廣泛閱讀,見識各種不同的用法。"
UML初學者指南
"夠薄,夠用。其實我已經(jīng)覺得它講得太多了。
不過如果再少點的話,就沒法出書了,呵呵。"
UML精粹
"本來這本書應該放在上面那本書之上的。
但是翻譯讓一向寬容的我也不得不憤怒了,如果是給高級的、有比較深厚UML功底的人看,到也罷了,可這是給入門者看的書啊,弄成這個樣子,讓他們以后怎么看別的書?"
UML with RationalRose
"Step by Step的用RationalRose畫UML的書,也可以稍帶著學一學UML。 這種方式也很好。
"
UML參考手冊 (第2版)
"這絕不是一本入門的書,甚至入門后也不能輕易看懂。
沒有UML寶典的年代里,只能看這個超級晦澀的官方參考手冊。
當看其它書產(chǎn)生疑惑的時候,搬出它來做個裁判。
當你多次做過這種裁判后,也許你就能明白為什么我會說,理論是理論,實踐是實踐。"
UML寶典
"當年市面上第一本講解UML2.0的書籍。也是目前我所見過的講解UML最系統(tǒng)的書。
更加難得的是,此書不但從理論上深入UML底層(這是其它書籍都沒有做到的),而且在UML的實際應用上也給出了相當準確的指導。
沒有這本書,相信會有很多UML的學習者要繼續(xù)在黑暗中摸索。"
其它關于UML的書
主要目的就是為了見識各種各樣的用法。
分析設計之能力培養(yǎng)
"一件有趣的事是,一個剛接觸分析設計的人和一個已經(jīng)非常善于分析設計的人差不多都會直接給出代碼(或者基于代碼的設計),而不是老老實實的按照先分析后設計的路子來。
然而盡管兩者從結果上看可能是一致的,但是背后的差異卻極其巨大,高手實際上是迅速跨越了分析和設計階段,基于經(jīng)驗經(jīng)過了各種初步的權衡給出的結果,重要 的是它是一個可以適應各種復雜程度的、可重復的過程。而初學者這種基于直覺的設計很難被應用在一個稍微復雜一點的場景中。
有個關于參禪的說法,頭十年見山是山,見水是水;中十年見山不是山,見水不是水;再十年見山還是山,見水還是水。
關于分析能力的培養(yǎng),基本上也是要經(jīng)歷這樣一個過程。在強制性的經(jīng)歷足夠多的分析過程之后才能收放自如的跨越整個分析設計過程。"
UML Java程序設計指南
"這本書在不少的地方有點極端。但是這種極端對于初學者走上正確的方向卻是相當?shù)闹匾?
一個是關于UML的應用。另一個是一個設計案例,這個例子可能會被不少人認為是腦子有病,但實際上這正是一個強制分析的過程,初學分析設計的人一定要學會這種抽象的思維能力。
記得幾年前參加一個sun的講師主持的分析設計的培訓,我迅速的給出了一個自以為很得意的設計,然而被評價為走得太快,那時很不忿,覺得這老師也不過而 而。然而在經(jīng)歷了很多的實際磨練之后,終于有一天意識到,那是一種多么重要的訓練啊,如果當初謙虛一點就不會走許多的彎路了。"
Enterprise Java with UML中文版
"如果說你實在覺得上一本書有些不夠親切,離你的思維習慣太遠,那就先從這本書入手吧。
這本書在任何一方面都應該不會入高手的眼,因為它實在是土得有點掉渣的感覺。
不過它的可貴之處在于,它勇敢的打破了所謂分析設計的神秘感,堅持用一套模式打天下,對于那些對分析設計壓根還摸不到方向感的人來說,這本書是一個很好的過渡。"
UML和模式應用
"幾年前我在學習分析設計的時候,看了大量的書籍,有很多蒙蒙朧朧的想法,卻一直難以把所有的知識形成一個完整清晰的體系,直到看到這本書。雖然我現(xiàn)在已 經(jīng)并不太認同它的一些觀念,主要是越來越死忠RUP的做法。但是對于思維體系完全沒有成型的初學者來說,這是一本必看的好書。
本書當前版本是第三版,我看過前兩版。但是最近新出的第三版還沒看。
推薦大家也是多個版本比較著看,也許你也會體會到作者的成長歷程,也許跟你曾經(jīng)的迷茫很有戚戚然的感覺呢。"
UML應用建模實踐過程
"一直很奇怪這本書為什么火不起來,難道就因為作者是個中國人?或者國人理解能力都超強,對于超級繁復的RUP都能輕易理解。
這本書的名字有點迷惑性,實際上這是一本關于過程的書,但是它關于UML的簡介部分做為入門也是足夠的到位。
當年我正對著RUP這個龐然大物無所適從的時候,這本書問世了,讀完之后,一個微型的RUP核心已經(jīng)了然于胸了。回頭再看RUP,直如庖丁解牛,勢如破竹。
如果先看這本書,再看上面的<UML和模式應用>,就會有很輕松的感覺,我當年可沒這好運氣,你們不要錯過哦。"
各種系統(tǒng)分析與設計的書
"盡管不少面向對象分析與設計的書其實也都是大師級的手筆,但是在現(xiàn)在看來已經(jīng)有點史前文明的意味了。
不過我們重在培訓自己的思維能力,所以千萬不要錯過跟隨大師思路的機會。"
分析設計之能力進階
"分析能力和設計能力實際上差不多是兩回事。
分析要求很好的抽象能力,而設計則既要求有比較強的抽象能力,也要求有很強的實現(xiàn)能力。
對技術沒有足夠深入的理解與認識,知識面不夠廣泛,或者不能夠寫出很好的代碼實現(xiàn),都是不可能做出真正的設計的。
換句話說,只有一種可選方案的設計不是真正的設計(但只有一種可行的方案是可能的)。"
重構:改善既有代碼的設計(中文版)
"Matin Flower寫的幾乎每一本書都是頂級好書,更絕的是每一本書幾乎都是一個獨立的領域。
其語言直白干練,直指問題核心。內(nèi)容則以實戰(zhàn)性理論展開,絕無那種空對空的泛泛之談。
這一本從編碼入手,幫助你從簡單代碼升華到優(yōu)秀設計。"
敏捷軟件開發(fā):原則、模式與實踐
"很多開發(fā)經(jīng)驗不多的人想學設計模式,都直奔四人幫的那本<設計模式>。
但實際上,第一這會浪費很多時間去理解相對比較生澀的內(nèi)容。第二以此種方式生硬的學模式很難真正提高設計能力。
設計模式不過是一些面向對象的設計原則加上一些根據(jù)具體開發(fā)語言的實際技巧而已。這本書正是教給你這些原則,和展示如何在實際的開發(fā)中捕捉需要應用模式的場合。
注意,市面上有兩本書的名字叫做<敏捷軟件開發(fā)>,一本是這個,以XP為名,實際上更偏重設計。另一本則是純粹關于XP的。"
設計模式
"這個名聲太大,不用我多廢話了。不過我還是要再次規(guī)勸一下那些一上來就看這本書的人,先看上面這本《敏捷軟件開發(fā):原則、模式與實踐 》吧。
其實它最大的貢獻是給模式起了個標準名字,這樣交流起來可以省卻了很多解釋的麻煩。
不過在實踐中還是有點問題,有些設計實際上完全應用的某個模式的思想,但是在實現(xiàn)上幾乎找不到書中對應代碼的影子。這有的時候是充分利用了某特定實現(xiàn)語言 的結果。而更多的時候,具體設計也不一定一板一眼的把每個模式的參與者全部單獨實現(xiàn),在發(fā)生這樣的退化時,有的模式就比較難區(qū)分了。"
設計模式精解
如果一定要從《設計模式》開始學習模式,請至少搭配一本這本書吧。無論如何請理解我的苦心:應該理解模式是從實際的需要出發(fā)被應用到設計中去的,而不是強行把模式應用到設計上。
Java與模式
"(在美)中國人的作品。雖然在模式上并沒有創(chuàng)新之處。但是其閃光之處在于,它鮮明的展示了模式不是僵化的,是有變種的。用這本書展示出來的才是活的模式,代價是言語上稍微有些啰嗦。
像《敏捷軟件開發(fā)一樣》,本書也把面向對象的原則單獨提出來做為一個重要部分,深刻理解并掌握這些原則實際上比學那些模式重要一百倍。"
分析設計之架構能力
上面的書提高的是局部設計的能力。下面的書籍則對于系統(tǒng)架構的把握有極大的幫助。
J2EE核心模式
"名氣幾乎與《設計模式》一樣響亮。沒的說,必看的書。
我的建議與對《設計模式》一樣,要以理解思想為主,不要生搬硬套。"
J2EE設計開發(fā)編程指南
"在今天,你可能不知道這本書,但不可能不知道spring framework。
其實就是因為這本書,才誕生了spring。Spring的核心正是這本書思想的集中體現(xiàn)。
這本書的中文版被翻譯得簡直不是一般的慘不忍睹。像我這種連邱仲潘都忍了n次的超級能容錯的人都忍受不了。
可以說,在J2EE的內(nèi)容不發(fā)生重大變化的情況下,幾乎所有關于J2EE架構設計需要理解掌握的基本原則,已經(jīng)全部包含在這里了。"
企業(yè)應用架構指南
上面這本是適用于J2EE的,而這一本書則是適用于更加概括的企業(yè)開發(fā)的。 想一下J2EE的含義正是Java企業(yè)開發(fā),這本書實際上在更加抽象的層次上為很多技術做了一個總結。
J2EE without EJB中文版
這本書是《J2EE設計開發(fā)編程指南》的作者寫的又一本好書。雖然在整體思想上并沒有超越《J2EE設計開發(fā)編程指南》,但是勝在比它要具體很多,全書圍繞spring framework來談論,也是學習spring framework的重要參考書。
領域驅動設計
"一種正在火熱中的設計思維。這種思路已經(jīng)在<企業(yè)應用架構指南>中有所涉及。
我還沒有閱讀此書,一是還沒有時間,二是出于對其實際可行性的懷疑--當然我不是說他不可實現(xiàn),而是相對于事物腳本的簡潔明了,在實際開發(fā)中它遇到的困難可能更多。<企業(yè)應用架構指南>中對于何時采用這種形式更加有利做了很好的分析。"
火熱技術
"這里列出了一些正在火熱的Java技術,他們將共同構筑起Java的明天。包括spring, hibernate, swt, ajax(這個不算java之列,但是與web相關)。
你可以直接學習這些新技術,但是請記住所謂的新技術很多時候是基于老技術的,透徹理解老技術才能真正掌握新技術,也會大大縮短掌握新技術的時間。"
精通Hibernate Java對象持久化技術詳解
深入淺出Hibernate
Hibernate開發(fā)及整合應用大全
精通spring
spring in action 中文版
SPRING框架高級編程
Ajax實戰(zhàn)
Ajax 修煉之道
ajax 基礎教程
Contributing to Eclipse中文版
需求與用例技術
"這部分放在這里有點不是很合適,只是有人對用例技術比較感興趣,所以列出來做個參考。
用例技術是被誤解誤用最多的。我的建議是,請至少要把這里列出來的書全部看完,順序不分先后,最后那本《特征驅動開發(fā)》實際上跟用例關系不大,而是類似于 XP一樣的開發(fā)方法論,但是我覺得可以供開闊思路用,不要簡單的被用例洗腦,與此類似的還有XP方法論中的User Story。
實際上我仍然很不放心,因為還有很多的網(wǎng)上的討論無法被包含在此列。"
有效需求實踐
軟件需求
軟件需求管理 用例方法
軟件需求管理 統(tǒng)一方法
用例建模
用例分析技術
編寫有效用例
特征驅動開發(fā)方法原理與實踐