声明:JavaEye新闻文章的版权属于JavaEye网站所有,严禁任何网站转载本文,否则必将追究法律责任!
《Effective Java》,这是一本Java开发者视为圣经的书。该书的第一版于2001发布。这几年Java平台发生了巨大的变化,尤其是Java5中引入很多新的语言特性。当前的实际情况与《Effective Java》第一版中所描述的发生了一些变化。譬如该书的第21条“用类来代替enum结构”,由于Java5中enum的引入情形已经不同。以及第九章“线程”,在该书第一版时JVM的内存模型还存在诸多问题,而JDK5中已经采用了新的JMM规范,一些问题已经不复存在;并且Java5中加入了java.util.concurrent包。
在今年的JavaOne大会上,《Effective Java》的第二版正式发布。该版中增加和修改了一些条目以适应Java平台这几年来发生的变化。而James Sugrue对该书的作者Joshua Bloch进行了一次采访,谈到了这本书新版本中发生的变化以及Joshua Bloch对这些年来业界发生的变化的看法,并且就JDK中将要加入的闭包询问了Joshua Bloch的观点。下面是采访中的一部分对话:
Sugrue: What changes have been added to bring to book up to date?
Sugrue: 在该书的新的版中有那些变化?
Bloch: I added two chapters, one on Generics, and another on Enums and Annotations. Also I added items describing best practices for each of the new language features in Java 5 (for-each loop, autoboxing, varargs, static import). I changed the title of the Threads chapter to Concurrency and rewrote it to reflect programming in the java.util.concurrent era (where the basic abstractions are tasks and executors, rather than threads, wait and notify). There's a table on page 1 that points you to all of this material.
In addition to adding material on features that were added to the platform since the first edition of the book, I added items or modified existing ones to reflect the evolution of best practices. For example, I added an item describing the Builder pattern (Item 2), and one describing the Serialization Proxy pattern (Item 78). I went over every line of every item, and did my best to make sure they were up to date.
Bloch: 我增加了两章。一章是关于泛型,另一章是关于Enum与Annotation;还增加了一些讲述Java5中新增的语言特性最佳实践的条目。我将Threads一章的标题修改为Concurrency,并且针对java.util.concurrent重写了该章。在该书的第一页有一个列表指出了这些变化。
除了自该书第一版以来Java平台上新添的特性以外,我还增加或修改了一些条目以反映最佳实践的演化。譬如,我增加了一个讲述Builder模式的条目(条目 2)以及一个讲述Serialization Proxy模式的条目(条目 78)。我仔细检查了书里面的每一条的每一行,尽我最大的努力确保它们反映出当前最新的变化。
Sugrue: Since the first book in 2001, what key changes have you observed in Java development?
Sugrue: 自从2001年发布该书的第一版以来,你认为在Java开发领域有那些关键性的变化?
Bloch: The biggest changes are the rise of modern IDEs, such as Eclipse, IntelliJ, and NetBeans, and static analysis tools, such as FindBugs. Agile techniques, which were just making inroads in 2001, have become mainstream.
Bloch: 最大的变化是现代IDE的增长,例如Eclipse、IntelliJ以及Netbeans。还有静态分析工具,如FindBugs。敏捷技术在2001年的时候才刚刚起步,而现在已经成为主流。
。。。
在今年的JavaOne大会上,《Effective Java》的第二版正式发布。该版中增加和修改了一些条目以适应Java平台这几年来发生的变化。而James Sugrue对该书的作者Joshua Bloch进行了一次采访,谈到了这本书新版本中发生的变化以及Joshua Bloch对这些年来业界发生的变化的看法,并且就JDK中将要加入的闭包询问了Joshua Bloch的观点。下面是采访中的一部分对话:
Sugrue: What changes have been added to bring to book up to date?
Sugrue: 在该书的新的版中有那些变化?
Bloch: I added two chapters, one on Generics, and another on Enums and Annotations. Also I added items describing best practices for each of the new language features in Java 5 (for-each loop, autoboxing, varargs, static import). I changed the title of the Threads chapter to Concurrency and rewrote it to reflect programming in the java.util.concurrent era (where the basic abstractions are tasks and executors, rather than threads, wait and notify). There's a table on page 1 that points you to all of this material.
In addition to adding material on features that were added to the platform since the first edition of the book, I added items or modified existing ones to reflect the evolution of best practices. For example, I added an item describing the Builder pattern (Item 2), and one describing the Serialization Proxy pattern (Item 78). I went over every line of every item, and did my best to make sure they were up to date.
Bloch: 我增加了两章。一章是关于泛型,另一章是关于Enum与Annotation;还增加了一些讲述Java5中新增的语言特性最佳实践的条目。我将Threads一章的标题修改为Concurrency,并且针对java.util.concurrent重写了该章。在该书的第一页有一个列表指出了这些变化。
除了自该书第一版以来Java平台上新添的特性以外,我还增加或修改了一些条目以反映最佳实践的演化。譬如,我增加了一个讲述Builder模式的条目(条目 2)以及一个讲述Serialization Proxy模式的条目(条目 78)。我仔细检查了书里面的每一条的每一行,尽我最大的努力确保它们反映出当前最新的变化。
Sugrue: Since the first book in 2001, what key changes have you observed in Java development?
Sugrue: 自从2001年发布该书的第一版以来,你认为在Java开发领域有那些关键性的变化?
Bloch: The biggest changes are the rise of modern IDEs, such as Eclipse, IntelliJ, and NetBeans, and static analysis tools, such as FindBugs. Agile techniques, which were just making inroads in 2001, have become mainstream.
Bloch: 最大的变化是现代IDE的增长,例如Eclipse、IntelliJ以及Netbeans。还有静态分析工具,如FindBugs。敏捷技术在2001年的时候才刚刚起步,而现在已经成为主流。
。。。
来自:http://java.dzone.com/articles/effective-java-an-interview-wi


评论 共 12 条 发表评论
wufan0023 2008-05-28 13:28
现在的jdk的变化还是蛮大的。
a_nuo 2008-05-27 09:31
wlhok 2008-05-25 00:51
Kevin_zqw 2008-05-24 13:27
Eastsun 2008-05-23 20:36
我博客上的字体颜色改过来了
comeon 2008-05-23 20:01
cddcdd 2008-05-23 17:36
这个字体能看得啊?
runjia1987 2008-05-23 15:08
laiseeme 2008-05-23 14:31
Eastsun 2008-05-23 13:07
如果译文有问题希望高手能指正,不要BS我就是了
freej 2008-05-23 11:25
Eastsun 2008-05-23 09:54