Effective java 主題:Effective Java Second Edition中文版已出版

我自己今天才剛見到書:)



譯者序

  Java從誕生到日趨完善,經過了不斷的發展壯大,目前全世界擁有了成千上萬的Java開發人員。如何編寫出更清晰、更正確、更健壯且更易於重用的代碼,是大家所追求的目標之一。作爲經典Jolt獲獎作品的新版書,它已經進行了徹底的更新,涵蓋了自第1版之後所引入的Java SE 5和Java SE 6的新特性。作者探索了新的設計模式和語言習慣用法,介紹瞭如何充分利用從泛型到枚舉、從註解到自動裝箱的各種特性。本書的作者Joshua Bloch曾經是Sun公司的傑出工程師,帶領團隊設計和實現過無數的Java平臺特性,包括JDK 5.0語言增強版和獲獎的Java Collections Framework。他也是Jolt獎的獲得者,現在擔任Google公司的首席Java架構師。他爲我們帶來了共78條程序員必備的經驗法則:針對你每天都會遇到的編程問題提出了最有效、最實用的解決方案。
  書中的每一章都包含幾個“條目”,以簡潔的形式呈現,自成獨立的短文,它們提出了具體的建議、對於Java平臺精妙之處的獨到見解,並提供優秀的代碼範例。每個條目的綜合描述和解釋都闡明瞭應該怎麼做、不應該怎麼做,以及爲什麼。通過貫穿全書透徹的技術剖析與完整的示例代碼,仔細研讀並加以理解與實踐,必定會從中受益匪淺。書中介紹的示例代碼清晰易懂,也可以作爲日常工作的參考指南。

適合人羣
  本書不是針對初學者的,讀者至少需要熟悉Java程序設計語言。如果你連equals()、toString()、hashCode()都還不瞭解的話,建議先去看些優秀的Java入門書籍之後再來閱讀本書。如果你現在已經在Java開發方面有了一定的經驗,而且想更加深入地瞭解Java編程語言,成爲一名更優秀、更高效的Java開發人員,那麼,建議你用心地研讀本書。

內容形式
 

<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
 本書分爲11章共78個條目,涵蓋了Java 5.0/6.0的種種技術要點。與第一版相比,本書刪除了“C語言結構的替代”一章,增加了Java 5所引入的“泛型”、“枚舉和註解”各一章。數量上從57個條目發展到了78個,不僅增加了23個條目,並對原來的所有資料都進行了全面的修改,刪去了一些已經過時的條目。但是,各章節沒有嚴格的前後順序關係,你可以隨意選擇感興趣的章節進行閱讀。當然,如果你想馬上知道第二版究竟有哪些變化,可以參閱附錄中第二版與第一版詳細的對照情況。

  本書重點講述了Java 5所引入的全新的泛型、枚舉、註解、自動裝箱、for-each循環、可變參數、併發機制,還包括對象、類、類庫、方法和序列化這些經典主題的全新技術和最佳實踐,如何避免Java編程語言中常被誤解的細微之處:陷阱和缺陷,並重點關注Java語言本身和最基本的類庫:java.lang、java.util,以及一些擴展:java.util.concurrent和java.io等等。

章節簡介
  第2章闡述何時以及如何創建對象,何時以及如何避免創建對象,如何確保它們能夠被適時地銷燬,以及如何管理銷燬之前必須進行的所有清除動作。
  第3章闡述對於所有對象都通用的方法,你會從中獲知對equals、hashCode、toString、clone和finalize相當深入的分析,從而避免今後在這些問題上再次犯錯。
  第4章闡述作爲Java程序設計語言的核心以及Java語言的基本抽象單元(類和接口),在使用上的一些指導原則,幫助你更好地利用這些元素,設計出更加有用、健壯和靈活的類和接口。
  第5和第6章中分別闡述在Java 1.5發行版本中新增加的泛型(Generic)以及枚舉和註解的最佳實踐,教你如何最大限度地享有這些優勢,又能使整個過程儘可能地簡單化。
  第7章討論方法設計的幾個方面:如何處理參數和返回值,如何設計方法簽名,如何爲方法編寫文檔。從而在可用性、健壯性和靈活性上有進一步的提升。
  第8章主要討論Java語言的具體細節,討論了局部變量的處理、控制結構、類庫的使用、各種數據類型的用法,以及兩種不是由語言本身提供的機制(reflection和native method,反射機制和本地方法)的用法。並討論了優化和命名慣例。
  第9章闡述如何充分發揮異常的優點,可以提高程序的可讀性、可靠性和可維護性,以及減少使用不當所帶來的負面影響。並提供了一些關於有效使用異常的指導原則。
  第10章闡述如何幫助你編寫出清晰、正確、文檔組織良好的併發程序。
  第11章闡述序列化方面的技術,並且有一項值得特別提及的特性,就是序列化代理(serialization proxy)模式,它可以幫助你避免對象序列化的許多缺陷。
  舉個例子,就序列化技術來講,HTTP會話狀態爲什麼可以被緩存?RMI的異常爲什麼可以從服務器端傳遞到客戶端呢?GUI組件爲什麼可以被髮送、保存和恢復呢?是因爲它們實現了Serializable接口嗎?如果超類沒有提供一個可訪問的無參構造器,它的子類可以被序列化嗎?當一個實例採用默認的序列化形式,並且給某些域標記爲transient,那麼當實例反序列化回來後,這些標誌爲transient域的值各是些什麼呢?……這些問題如果你現在不能馬上回答,或者不能很確定,沒有關係,仔細閱讀本書,你會對它們有更深入與透徹的理解。

技術範圍
  雖然本書是討論更深層次的Java開發技術,講述的內容深入,涉及面又相當廣泛,但是它並沒有涉及到圖形用戶界面編程、企業級API以及移動設備方面的技術,不過在各個章節與條目中會不時地討論到其他相關的類庫。
  這是一本分享經驗與指引你避免走彎路的經典著作,針對如何編寫高效、設計優良的程序提出了最實用、最權威的指導方針,是Java開發人員案頭上的一本不可或缺的參考書。

  。。。

  雖然我們在翻譯過程中竭力追求信、達、雅,但限於自身水平,也許仍有不足,還望各位讀者不吝指正。關於本書的翻譯和翻譯時採用的術語表以及相關的技術討論大家可以訪問我的博客http://blog.csdn.net/YuLimin,也可以發郵件到YuLimin AT 163 DOT com與我交流。
  在這裏,我要感謝在翻譯過程中一起討論並幫助我的朋友們,他們是:滿江紅開放技術研究組織創始人曹曉鋼Spring中文站創始人楊戈(Yanger)SpringSide創始人肖樺(江南白衣)和來自寶島臺灣的李日貴(jini)林康司(koji)林信良(caterpillar),在此再次深表感謝。

快樂分享,實踐出真知,最後,祝大家能夠像我一樣在閱讀中享受本書帶來的樂趣!

Read a bit and take it out, then come back read some more.

 

俞黎敏
2008年11月




網上書店購買:
中國互動出版網china-pub:http://www.china-pub.com/195040

噹噹商店:http://product.dangdang.com/product.aspx?product_id=20459091

第二書店:http://www.dearbook.com.cn/book/251370

華儲網:http://www.huachu.com.cn/itbook/itbookinfo.asp?lbbh=10097485

電子工業出版社:暫無

卓越亞馬遜:http://www.amazon.cn/mn/detailApp?ref=ADSR&uid=168-0436465-6777002&prodid=bkbk916854

新風雨:http://www.cnforyou.com/query/bookdetail1.asp?viBookCode=7925

蔚藍網:http://www.wl.cn/4124920

Effective Java Second Edition中文版勘誤列表專用貼
http://www.javaeye.com/post/801255

相關資源:
EclipseJDK6 Effective Java Second Edition Examples:
http://java2class.javaeye.com/blog/291068

Effective Java Second Edition中文翻譯術語表討論專用貼:
http://yulimin.javaeye.com/blog/272088

本書地址:
http://java.sun.com/docs/books/effective/

英文勘誤:
http://java.sun.com/docs/books/effective/errata.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章