本书简介
本书由IBM Eclipse Jumpstart小组成员编写,荣获第15届Jolt大奖,是全世界Java开发人员学习Eclipse的首选读本。该书从第1版开始,就以经典的内容影响无数Java程序员,受到业界专家和读者的极大推崇,曾经荣登、Barnes & Nobel以及JavaOne 2003、2004、2005年度Java畅销书排行榜,还获得具有“软件工业奥斯卡”之称的SYS-CON读者选择奖提名。IBM Eclipse项目管理总监Dave Thomson亲自作序并推荐,无论您是否拥有Eclipse开发经验,本书都将使您获益匪浅。
本书的起源 从1999年后期开始,本书作者在IBM里成立了一个小组,称为Eclipse Jumpstart小组。创建该小组的目的是为了共享会成为整个IBM中的Eclipse技术的知识,同时与它的商业伙伴共享这些知识。该小组所做的这些工作的一部分包括一套演示稿、演讲资料和相关练习。在随后的数月过后,随着Eclipse技术的成熟,相关的演示稿和练习也开始变得成熟起来。当Eclipse社区不断壮大,囊括了各种公司和学术机构时,对这些信息的需求也就开始相应增加。 第2版 2003年后期,我们发现大多数原先的作者依旧积极从事与Eclipse相关的工作。我们没有预料到并且极为欣慰地看到本书第1版获得了公众的肯定。对于第1版的公众和私人评价都是非常正面的。2004年7月,第1版收到了来自Java Developers Journal的一个编辑选择奖(Editors’ Choice Award)。作者们对我们的许多读者表达了他们诚挚的谢意和感激之情。在第1版出版后还不到6个月的时间,我们意识到Eclipse 3.0将会是极为特别的,并且具备将Eclipse带到一个新的高度这样的潜力。既然Eclipse 3.0已经不只限于IDE,它还可以适用于任何种类的客户端应用程序,那么Eclipse 3.0将会对更多的开发人员社区产生影响,进而潜在地影响到数百万的用户。作者们仍然对这一技术和该技术为创新工具和应用程序提供的机会而充满热情。我们决定提前计划创作第2版。第2版的目标是将本书升级到Eclipse 3.0,并基于读者的反馈加以改进,同时添加了许多精选的新主题。对于想随身携带图书的读者而言,这一版在重量上和体积上都接近极限。然而,我们希望本书能够继续很好地为您和Eclipse社区提供服务。 第2版中的新增内容 来自第1版的所有章节、练习和示例都根据Eclipse 3.0进行了更新。 ● 增加了“本书阅读向导”部分。这个部分提供了一个计划,以帮助Eclipse新手从这本内容全面的书中获得尽可能多的Eclipse知识。 ● 包含7章新内容和3个新练习,特别注重于新增的胖客户端支持。本书进行了重新组织,以便突出这个具有重要意义的新增功能。有专门的一章介绍胖客户端主题,同时包含两个相关的详细练习。其中一个练习示范了对于动态插件的新的Eclipse运行时支持。 ● 对于将Eclipse用作其Java开发环境的读者,本书为他们提供了一个新的练习。在这个练习中,使用运行在Apache Tomcat服务器上的一个Java servlet应用程序来开发一个简单的Web商业站点。 ● 针对扩展Eclipse提供了全新的介绍。增加了内容全面的一章,用于介绍JFace查看器,同时扩充了一章,用于介绍视图。关于并发性的一章将向您展示如何通过在后台处理工作来创建响应能力更强的用户界面。在阅读了有关Eclipse功能组的一章之后,您可以更好地管理胖的或复杂的用户界面。用来介绍插件性能调整的一章将有助于您避免常见的开发误区。在有关国际化和辅助功能的一章,新增内容有助于您开发可以扩大市场的产品。有关Java Swing互操作性的一章涵盖了Eclipse改进的Swing支持。 ● 本书的结构进行了重新组织,从而反映出本书的知识量和Eclipse功能的广度。本书分为6个部分。第Ⅰ部分专门面向Eclipse用户,第Ⅱ~Ⅴ部分面向对Eclipse进行扩展的开发人员。第Ⅵ部分包含与使用和扩展Eclipse相关的详细练习。 ● 本书配套光盘从便于访问和加载的角度进行了重新组织。光盘中包含了许多新的示例。所有的示例文档都已经打包到了它自己的帮助书籍中,可以安装这些书籍,使其与Eclipse联机帮助中的其他书籍排在一块。 书中最后的屏幕截图是基于Eclipse 3.0创建的。书中的图片与最终的Eclipse版本之间可能存在较小的差别。 本书目标 对于本书,我们有几个目标: ● 提供适合Eclipse新手的信息。 新用户可以将本书用作教程,而在以后当成一本参考书。我们不假定读者事先具备有关Eclipse的知识。 ● 研究Eclipse的功能 本书涵盖了两方面的内容:一个方面是将Eclipse用作您的开发环境,另一个方面是扩展Eclipse。在第Ⅰ部分的章节中,首先介绍的是作为通用开发环境的Eclipse,然后进入Java程序的开发与调试,同时包括更为高级的使用方面的主题,例如在小组环境中使用Eclipse。在第Ⅱ~Ⅴ部分中有关扩展Eclipse的内容涵盖了Eclipse框架中最常用的类。根据情况,通过引用相关的设计模式来对类之间的体系结构关系进行了示范。提供这些内容的目的不是要取代Eclipse自带的Javadoc,而是将其作为Javadoc的一个补充,因为这些内容将重点放在如何将一套类集中到一起来完成特定的任务上。 ● 提供简单且集中于每章主题的练习和可操作的示例。 练习和示例对某些章的主题进行了扩充,并举例说明了一些要点。各章的正文则集中于概念,同时概述完成某项任务的一些基本步骤,提供较小的代码段或屏幕截图来解释说明这些要点。练习则提供了详细的编码说明和屏幕截图来运用对应的章中描述的概念。本书的配套光盘包含了逐步深入的练习,同时包含了其他可操作的示例来作为本书中各章节的补充。 ● 提供全面的Eclipse内容,对任何阅历层次的人都有用处。 涵盖了Eclipse的基本原理,从而提供了一个基础。从这里,您可以根据自己的需要和兴趣来自由选择许多其他的主题。 ● 促进Eclipse社区。 本书提供了全面的Eclipse知识,学习之后,您可以成为一名活跃的参与者并帮助壮大Eclipse开源社区。 尽管术语“Eclipse”字面上是“日蚀或月蚀”的意思,但是本书的目的是要发光,增加清晰度,聚焦于功能强大的新平台。不管您是Eclipse新手,还是您很早就开始使用Eclipse,我们都欢迎您来到Eclipse社区。 本书面向的读者 本书的读者包括:计划将Eclipse用作其开发环境的Java程序员;将要使用基于Eclipse的插件的人;希望进一步定制Eclipse的高级用户、工具开发人员(试图开发要与Eclipse进行集成的工具);希望将Eclipse用作其客户端应用程序的框架的应用程序开发人员。本书并不要求读者预先具备Eclipse的经验;然而,本书假定您熟悉Java编程语言。虽然本书描述如何使用由Eclipse提供的Java开发工具(JDT),但本书并不讲述Java编程语言的语法和语义。 本书的组织结构 这本内容全面的书籍可以帮助您学习使用与扩展Eclipse。在您掌握了基础知识之后,可以将本书用作一本参考书。为了帮助您学习Eclipse,您应当首先阅读“本书阅读向导”部分。在这个部分中,将这本令人敬畏的书籍划分为便于管理的几个知识块,您可以按照最适合自己学习的顺序来阅读这些知识块。 本书分为6个部分。第Ⅰ部分“使用Eclipse”适用于将Eclipse用作其开发环境的人。本书首先介绍的是Eclipse的基本导航功能与基本术语。接着,您将学习Java开发环境,包括成为一个强大用户的秘诀。本部分还介绍了如何在小组编程环境中使用Eclipse。您将学习如何利用Eclipse的灵活性来最大化您的效率和适合自己的个人风格。学习Java编程语言的学生可能会发现:对于学习Java语言的丰富性和功能而言,使用Eclipse(而不仅仅是一个命令行环境)是一种更具效率和令人兴奋的方式。教师们可能会发现在课堂上使用Eclipse可以加速学生对Java语言的掌握,并且在他们的研究工作中,Eclipse成了他们的一个具有生产力的工具。 第Ⅱ部分“扩展Eclipse基础”将重点放在与扩展Eclipse有关的一些重要要素,这些内容独立于您扩展Eclipse来开发工具或创建一个客户端应用程序。这一部分涵盖了Eclipse的体系结构、怎样开发插件、使用胖客户端支持来创建客户端应用程序、怎样使您的插件可供他人扩展,还介绍了有关打包与部署方面的内容。 第Ⅲ部分“扩展Eclipse Workbench”涵盖了与扩展Eclipse功能相关的主题,这些主题是常见的而且是必要的。以Eclipse的体系结构作为基础,本部分涵盖了对于扩展Eclipse用户界面所需的框架。介绍了如何使用SWT(Standard Widget Toolkit,标准小部件工具箱)、对话框和向导、菜单、查看器、视图、编辑器、透视图和联机文档,来开发基本的GUI。 第Ⅳ部分“扩展Eclipse IDE”集中于在将Eclipse作为一个IDE来扩展时运用的那些服务。这一部分与第Ⅱ部分是相对的,涵盖了既适用于基于IDE又适用于基于非IDE的应用程序的服务。本部分包括诸如访问工作空间和扩展Java开发工具之类的主题。 第Ⅴ部分“可扩展性主题”通过包含各种主题来综合您的Eclipse知识。这些主题也许不是您马上需要的,或者是专门用于特定场合的。这一部分涵盖了关于可服务性、Swing互操作性、并发性、功能组、性能调整、OLE和Active X支持(Windows)和国际化方面的主题。 在不实际编写代码的情况下学习某个编程环境会有一定的难度。第Ⅵ部分“练习”包含了一系列详细的练习来强化书中介绍的概念。本部分依赖于配套光盘上包含的文件。配套光盘上包含所有练习的解决方案,同时包含用来对相关章节中的材料进行扩充的许多代码样本。这些练习彼此之间不存在依赖关系,因此您可以按任何顺序来完成这些练习。 本书许多章节中都包含了对于书籍Official Eclipse 3.0 FAQs(Boston, MA: Addison-Wesley, 2004)的引用,该书由John Arthorne和Chris Laffra合著。我们建议将这本书作为本书的补充读物。用以扩充本书内容的FAQ(Frequently Asked Question)在每章的“参考文献”一节以及配套光盘中进行了引用。 配套光盘 本书配套光盘包含如下内容: ● Eclipse SDK 3.0版 ● Eclipse 3.0示例插件 ● 各章示例 ● 练习模板文件与解决方案 ● 示例和练习的文档(包含在一个Eclipse Help插件中,参见图0-1) ● 包含安装说明的一个readme.html文件 图0-1 与Eclipse帮助系统集成的联机信息中心 要完成这些练习,您必须安装Eclipse SDK 3.0版。该Eclipse SDK要求您安装JRE(Java Runtime Environment,Java运行时环境)1.4版或更高版本。您可以从下载一个JRE(或JDK)。除非另外说明,配套光盘上的示例和练习都在Windows XP上通过了测试。其示例是使用Java编写的,因此,只要代码或指令不依赖于Windows专用的功能,您就同样可以将这些示例用于其他操作系统上。您可以参阅本书配套光盘上的readme.html文件来获取更多的信息。 在哪里找到进一步的信息 其他信息(包括任何勘误)可以在上获得。您可以将本书或配套光盘中的问题或错误通过fwkbook@tup.tsinghua.edu.cn反馈给我们。同时,欢迎您提出改进建议或其他反馈信息。