■劉基誠 雷厲風(fēng)
曾幾何時(shí),國外的Java圖書出現(xiàn)過三大系列鼎足而立的態(tài)勢。這就是Pearson集團(tuán)旗下的Prentice Hall和Addison Wesley與Sun公司合作推出的Sun Press Java系列,Wrox公司的Java系列和O‘Reilly公司的Java系列。比較而言,前者雖然來自技術(shù)本原,又匯集原來兩個(gè)系列的實(shí)力,權(quán)威性毋庸置疑,但是總體
上技術(shù)文檔氣息比較重,各書之間就寫作水平和易讀性來看很不均衡,既有《Java核心技術(shù)》、《Effective Java》、《Java編程語言》這樣的超級經(jīng)典,又有大量平平之作。后者的規(guī)劃最為嚴(yán)密,叢書的平均水平也最整齊,經(jīng)過多年積累,已經(jīng)出版了70多種,幾乎囊括了Java技術(shù)的方方面面:語言學(xué)習(xí)(以《Head First Java》和《Java in a Nutshell》為代表)、技術(shù)專題(以《Java網(wǎng)絡(luò)編程》、《Java與XML》、《Java Swing》、《Java Server Pages》為代表)、工具(《Eclipse》、《Ant權(quán)威指南》為代表)、企業(yè)級開發(fā)(以《Enterprise JavaBeans》為代表)和實(shí)例(《Java經(jīng)典實(shí)例》為代表)。而Wrox則是盛極后衰的典型,2001年前后,印著作者頭像大多名為“Beginning”和“Professional”的紅皮書與O Reilly一一針鋒相對,不但出手奇快,而且內(nèi)容涵蓋全面扎實(shí),博得好評一片,聲勢一度壓過了后者,這其中以Ivar Horton的《Java入門經(jīng)典》、《J2EE高級編程》、《Expert One-on-One J2EE Design and Development》為代表??蛇z憾的是,此后不久Wrox就由于整個(gè)集團(tuán)在.NET和Java乃至圖形圖像、網(wǎng)站設(shè)計(jì)等等多面作戰(zhàn),戰(zhàn)線過長,管理又失控,終于以被收購而告終。其品牌和大部分圖書歸入John Wiley所有,也就是說,現(xiàn)在新的紅皮書都是這家有近200年歷史的公司旗下出品。另外有部分圖書則被開發(fā)類圖書的新銳Apress購買,改用該出版社的封面。兩家目前同時(shí)出版“Beginning”冠名的圖書,但是原“Professional”系列Apress改用“Pro”以示區(qū)分。
這三大主流系列之外,還有小型的Manning出版社不可不提。Manning本來也覆蓋各種開發(fā)語言和工具,甚至包括其他出版社很少涉及的PowerBuilder,但是2003年后,幾乎完全轉(zhuǎn)向了Java平臺,與Java開發(fā)社區(qū)的結(jié)合度大概是最緊的———theServerSide網(wǎng)站上就頻繁出現(xiàn)該出版社的圖書預(yù)覽評論。為了避免與大中型競爭對手正面沖突,Manning選擇了更加專業(yè)和前沿的小眾領(lǐng)域,并精益求精,取得了極佳的口碑。在Struts、Hibernate、JUnit、Ant等方面都有最具競爭力的圖書。
雖然本文已經(jīng)進(jìn)入最后部分,但是從所涉及的Java領(lǐng)域來看,只能說是剛剛開了一個(gè)頭———僅僅評完了語言層面的圖書而已。不難發(fā)現(xiàn),目前國內(nèi)市場上值得關(guān)注的引進(jìn)圖書,幾乎都不出以上四家,當(dāng)然,近來國產(chǎn)圖書也開始有了一些佳作。接下來,讓我們一起盡覽Java圖書大觀園秀色。 工具書
Java是一種簡單但是又復(fù)雜的語言。說它簡單,是指相對C 等前輩而言,許多功能語言能夠直接提供支持,大大減少了開發(fā)工作量;說它復(fù)雜,是指Java語言和平臺提供的功能極為豐富,短時(shí)間很難掌握。時(shí)至今日,發(fā)展到5.0的Java,光是API的數(shù)量就已經(jīng)是一個(gè)驚人的數(shù)字,就更不用說其中細(xì)節(jié)了。Sun公司的API文檔當(dāng)然幫得上忙,但是對于經(jīng)驗(yàn)不夠以及英文不好的人,無法完全解決問題。這種情況下,可供查閱的工具書就非常必要了。
JAVA技術(shù)手冊(第4版)(影印版)
David Flanagan/著
清華大學(xué)出版社 定價(jià):99元
說起Java工具書,首屈一指的當(dāng)然是Flanagan的傳奇大作了。此書與《Unix技術(shù)手冊》、《Linux技術(shù)手冊》并稱O‘Reilly Nutshell(堅(jiān)果)系列的三大手冊,是該公司早期得以稱雄技術(shù)出版領(lǐng)域的大功臣,與Java的版本保持同步。言簡意賅的敘述和豐富的索引是其招牌特征。此書中沒有涉及AWT、Swing以及J2EE的內(nèi)容,系列中另有兩本書專門講述。需要警告大家的是,第4版是此書最不好的一個(gè)版本,最明顯的缺點(diǎn)就是書中切口處沒有印上類似于字典的曾經(jīng)是Nutshell手冊特色的分隔標(biāo)簽。每章開始處的包關(guān)系圖也沒了。國內(nèi)中國電力出版社還出版過此書第三版的中文版,但是翻譯頗受詬病。國外此書的第五版已經(jīng)出版,又迅速攀升到暢銷榜前列。
JAVA Developers ALMANAC 中文版:實(shí)例與快速參考(第1.4版 第1卷)
Patrick Chan/著 王衛(wèi)星等/譯
機(jī)械工業(yè)出版社 定價(jià):99元
作者作為Java創(chuàng)始小組的主力成員,曾是負(fù)責(zé)可移植性和Windows平臺的架構(gòu)師,也是AWT的設(shè)計(jì)者之一。顯然,在版式設(shè)計(jì)方面,他也頗有天賦。本書在形式和體例設(shè)計(jì)上花費(fèi)的心思比《Java技術(shù)手冊》可以說是有過之而無不及,因此多年來極受Java程序員青睞。其結(jié)果,是一本非常實(shí)用參考書,除按字母逐一講解API之外,還有極為豐富的實(shí)例,實(shí)例有網(wǎng)絡(luò)版,查詢更加方便。本書有些網(wǎng)上書店有特價(jià)銷售,30元左右,可謂大大的物超所值。此書本還有第2卷,討論applet和Swing,但是沒有中文版。清華大學(xué)出版社影印了兩卷,可以參考。 ?!☆}
以下我們真正超越基本語言的層面,進(jìn)入更廣闊的天地。迎面而來的是開發(fā)客戶端程序必不可少的GUI技術(shù),也就是Swing。由于Java在桌面方面的開發(fā)還沒有成為主流,我們在這里只是淺嘗輒止。
Java Swing(第二版)
Marc Loy,Robert Eckstein等/著 R&W組/譯
清華大學(xué)出版社 定價(jià):128.00元
Swing方面的書目前只能推薦這一本了。很抱歉,書很厚,價(jià)錢也是個(gè)問題。但是權(quán)威性還是有口碑的,翻譯也不錯(cuò)。而如此篇幅卻仍然會(huì)漏掉一些重要內(nèi)容,Swing的瑣細(xì)可以想見了。比較多被人提到的明顯遺漏包括AWT事件模型和一些布局管理器。
國外共有三本比較重要的Swing圖書,除本書外,還有Manning所出的一本,也是近900頁的巨著,在我印象中似乎沒有中文版本。SunPressJava系列中也有一本《JFCSWING標(biāo)準(zhǔn)教材(第二版)》,略薄一些,有中文譯本(電子工業(yè)出版社),但是翻譯不能令人滿意,就不予推薦了。
接下來我們進(jìn)入企業(yè)級Java的技術(shù)迷宮。這是目前炙手可熱的領(lǐng)域。然而奇怪得很,如此復(fù)雜、內(nèi)涵豐富、大有文章可做的寶庫,國內(nèi)值得推薦圖書的數(shù)量和質(zhì)量卻難以與之相符。
J2EE綜述: __________________________________________________________________________
The J2EE Tutorial中文版
Stephanie Bodoff等/著 顏承等/譯
中國鐵道出版社 定價(jià):47元
網(wǎng)站上常常有讀者詢問J2EE該如何入門,從哪一本書入門的問題,令人遺憾的是,目前這個(gè)問題并沒有直截了當(dāng)?shù)拇鸢?。因?yàn)樵贘2EE 1.5(估計(jì)Sun會(huì)統(tǒng)一為5.0)尤其是EJB3.0定案之前,J2EE的整個(gè)發(fā)展方向都并不明確。至少目前,放棄EJB的重量級方案而選用Hibernate、Spring之類的輕型框架正在成為熱點(diǎn)。
本書的好處在于,它直接來自Sun公司,是對J2EE最四平八穩(wěn)的介紹。書中的主干還是對EJB的介紹,對其他方面包括Web層技術(shù)的介紹都比較簡略。由于篇幅所限,通過本書,你只能對J2EE有一個(gè)大概的初步印象,真正能夠達(dá)到實(shí)戰(zhàn)水平,道路還很漫長。順帶提及,本書的新版本(針對1.4)《J2EE1.4標(biāo)準(zhǔn)教材》已經(jīng)由電子工業(yè)出版社出版,其中增加的部分大多與XML、Web服務(wù)和JSP方面的更新以及JSF相關(guān),這正是J2EE1.3到1.4的主要更新。不過新版本已經(jīng)厚達(dá)1000頁以上,定價(jià)100元,就性價(jià)比而言似乎不是那么盡如人愿。
Web層: __________________________________________________________________________
Servlet與JSP核心編程,卷1(第2版)
Marty Hall,Larry Brown/著 趙學(xué)良/譯
清華大學(xué)出版社 定價(jià):59元
按照一般的學(xué)習(xí)地圖,從語言到企業(yè)級Java最好的路徑就是JSP和Servlet。事實(shí)上,如果你沒有機(jī)會(huì)參與大型軟件系統(tǒng)的開發(fā),J2EE中最常用也最實(shí)用的也就是Web層技術(shù),開發(fā)動(dòng)態(tài)網(wǎng)站等等應(yīng)用,即使中小企業(yè)也都用得上。歷史上,Servlet和JSP大多是分別講述的,O‘Reilly和Wrox等等出版社都是如此。然而,這兩項(xiàng)技術(shù)不僅本質(zhì)相同(最終都要轉(zhuǎn)換為Servlet,再進(jìn)行編譯),而且在應(yīng)用中關(guān)系極為密切。因此,MartyHall將兩者結(jié)合講解看似獨(dú)辟蹊徑,實(shí)則更加貼近開發(fā)實(shí)踐。從我個(gè)人的經(jīng)驗(yàn)來看,這樣做是絕對正確的,也正是這樣的處理,使本書得以鶴立雞群。
本書原著和譯筆都非常流暢,講述技術(shù)細(xì)節(jié)體貼周到。作者在闡釋概念方面有獨(dú)到之處,常常三言兩語就能說清其他書中長篇大論也說不清的東西。書中對Servlet和JSP兩項(xiàng)技術(shù)區(qū)別和如何集成的敘述就極精彩。Amazon上本書的讀者評論就達(dá)到200多條,受歡迎程度可見一斑。
本書的第2卷尚未出版,從內(nèi)容上看應(yīng)該是在機(jī)械工業(yè)出版社已經(jīng)出版的《Servlet與JSP權(quán)威指南》(即《More Servlet sand JSP》中文版)一書基礎(chǔ)上的更新和擴(kuò)充,將涵蓋Struts、JSTL、JSF等內(nèi)容。
JSP設(shè)計(jì)(第三版)
Hans Bergsten/著 林琪 朱濤江/譯
中國電力出版社 定價(jià):79元
由于不斷保持更新,在單獨(dú)講JSP的引進(jìn)圖書中本書已經(jīng)穩(wěn)坐頭把交椅。值得稱道的是,這一版的翻譯工作有較大提高。作者的專家身份(JSP和Servlet規(guī)范專家組成員)自然保證了內(nèi)容的權(quán)威性。為了覆蓋更廣的讀者群,尤其是網(wǎng)頁設(shè)計(jì)人員,書中不少內(nèi)容起點(diǎn)很低,比如在講解中可能很詳細(xì)地解釋一些編程基礎(chǔ)知識。這種處理顯然是一把雙刃劍,有經(jīng)驗(yàn)的程序員對此很容易不耐煩,事實(shí)上網(wǎng)上對此書不利的評價(jià)大多也是由此而引起的。在我看來,想讓一本JSP技術(shù)書籍既滿足網(wǎng)頁設(shè)計(jì)人員,又滿足軟件開發(fā)人員幾乎是不可能完成的任務(wù),還是“分而治之”符合計(jì)算機(jī)科學(xué)原理。
精通Struts:基于MVC的Java Web設(shè)計(jì)與開發(fā)
孫衛(wèi)琴/著
電子工業(yè)出版社 定價(jià):49元
Tomcat與Java Web開發(fā)技術(shù)詳解
孫衛(wèi)琴 李洪成/著
電子工業(yè)出版社 定價(jià):45元
這兩本書是2004年國內(nèi)原創(chuàng)圖書中的驚喜。以如此專業(yè)的圖書而獲得一致好評和空前的市場成功(《精通Struts》一書2004年8月出版,到2005年2月已經(jīng)是第5次印刷,而且仍然印刷了5000冊,出版界的朋友告訴我,由此判斷此書銷售應(yīng)該已經(jīng)超過25000冊,在今日的市場中如此銷量,確屬驚人),其含義是非常豐富的:一方面說明技術(shù)圖書市場其實(shí)并沒有大多數(shù)人眼中的那么悲觀,一方面說明Java技術(shù)目前在國內(nèi)的熱度確實(shí)非常。
關(guān)于這兩本書,一位讀者的評價(jià)非常中肯:“優(yōu)點(diǎn)并不在于它提出了多少有突破性、發(fā)明性的思想,但它作為技術(shù)傳播工具,能夠把技術(shù)分析得非常清晰細(xì)致,舉的各種Web應(yīng)用實(shí)例循序漸進(jìn),恰到好處。”也許恰到好處,貼切符合國人需要,才是原創(chuàng)圖書成功的必由之路。 EJB層:__________________________________________________________________________
精通EJB(第二版)
Ed Roman/著 劉曉華/譯
電子工業(yè)出版社 定價(jià):59元
毫無疑問,按Sun公司的本意,EJB應(yīng)該是J2EE架構(gòu)中真正的核心。然而,令人尷尬的是,國內(nèi)已經(jīng)出版的講述E鄄JB的圖書中,居然挑不出一本完全合格的教程類圖書可以推薦。本書原版非常有名,問題又出在翻譯上:后半部分許多地方質(zhì)量差得驚人。好在原作者公開了原版電子文件,讀者能夠一邊看,一邊改,一邊罵了。
此書手稿中的一部分最后演變成了另一本書《EJB設(shè)計(jì)模式》,已由機(jī)械工業(yè)出版社出版,屬于經(jīng)驗(yàn)總結(jié)性的讀物,應(yīng)該配合閱讀。
經(jīng)驗(yàn)T深入T模式:
__________________________________________________________________________
J2EE設(shè)計(jì)開發(fā)編程指南
Rod Johnson/著 魏海萍/譯
電子工業(yè)出版社 定價(jià):64元
如果J2EE方面只允許推薦一本書的話,此書的英文版會(huì)是很多人的選擇。Johnson所提出的EJB并不是萬靈丹藥,以及對何時(shí)使用EJB,不使用EJB時(shí)的替代方案等等,在當(dāng)時(shí)可以說是振聾發(fā)聵,驚醒了許多人。從書中發(fā)展出來的Spring框架如今已經(jīng)成為J2EE輕量級運(yùn)動(dòng)的重要一員。讓人痛心的是,這本書中文版翻譯得慘不忍睹。就憑將Johnson著作無情糟蹋掉這一點(diǎn),這位譯者已經(jīng)得罪了整個(gè)J2EE社區(qū)。電子工業(yè)出版社在Java技術(shù)方面,尤其是J2EE方面出書很多,但是在某些方面(比如說翻譯)常常很難令人滿意,也許應(yīng)該好好總結(jié)一下了。至少,本書的價(jià)值到今天仍然不減,Amazon上的排名保持在3000左右,仍然是最暢銷的Java類圖書之一,為什么不考慮一下重新翻譯,利人利己呢?
J2EE核心模式
Deepak Alur等/著 牛志奇等/譯
機(jī)械工業(yè)出版社 定價(jià):35元
J2EE領(lǐng)域本書與上一本齊名,匯集了Sun公司和客戶大量經(jīng)驗(yàn),是J2EE架構(gòu)師必讀書。糟糕的是,本書的翻譯也是問題多多,只能說比上一本稍好一些??茖W(xué)出版社出版了影印版,可以參考。
不過也有好消息,此書已經(jīng)有了第二版,而且中文版由長期擔(dān)任本報(bào)特約記者的青年才俊擔(dān)綱翻譯,不日就將由機(jī)械工業(yè)出版社出版。想來這次該有滿意的結(jié)果。 其 他
最后是幾本沒有歸入前面的類別,然而我本人認(rèn)為比較重要的好書。
JAVA與模式
閻宏
電子工業(yè)出版社 定價(jià):88元
本書顯然也創(chuàng)造了一個(gè)奇跡,高定價(jià)仍然暢銷并且常銷,為原創(chuàng)圖書樹立了很好的榜樣。講述模式的好書已經(jīng)很多,但是專門結(jié)合Java講述的,目前應(yīng)該還是以此本最佳。
JAVA實(shí)用系統(tǒng)開發(fā)指南
彭晨陽
機(jī)械工業(yè)出版社 定價(jià):42元
本書是一本實(shí)例驅(qū)動(dòng)的教程,雖然有些設(shè)計(jì)和代碼不夠成熟,但以原創(chuàng)標(biāo)準(zhǔn)衡量,已經(jīng)難能可貴。書中比較詳細(xì)地介紹了設(shè)計(jì)思路,并兼顧地介紹相關(guān)模式和技術(shù),是一種很好的寫作模式。
Java與XML(第二版)
Brett McLaugblin/著 劉基誠/譯
中國電力出版社 定價(jià):59元
舉賢不避親。此書正是本人所譯。由于J2EE1.4中增加了大量處理XML以及Web服務(wù)的內(nèi)容,此書的重要性大大提升。翻譯中在語言的平順上下了不少功夫,總體還算滿意。不過編輯校對上的小失誤較多,有一些遺憾。
我們的Java圖書之旅已經(jīng)到站。雖然已經(jīng)盡力,但是限于篇幅、眼力和閱歷,肯定無法反映全貌,批評與意見,請給我們發(fā)郵件:
jch-liu@sohu.com。