没有合适的资源?快使用搜索试试~ 我知道了~
首页利用Eclipse开发环境创建Java应用与插件指南
本章节深入探讨了如何利用Eclipse开发环境进行Java应用程序的创建,以及更为关键的是如何为其自身定制插件。首先,章节引导读者获取并安装Eclipse,包括设置过程,确保开发者的开发环境准备就绪。接下来,它对Eclipse用户界面(UI)进行了简要介绍,强调了其可定制性,让开发者能够根据个人需求优化工作流程。 章节的重点在于介绍一系列关键的Eclipse工具,这些工具涵盖了项目的初始化、代码导航和搜索、以及Java代码的创建和编辑。在团队协作中,Eclipse开发者通常会使用Concurrent Versions System (CVS),这是Eclipse自带的版本控制系统,用于代码共享和版本控制。通过步骤详解,读者将学会如何设置和使用CVS来管理团队合作中的代码库。 在完成初始Java项目和类的创建后,章节会进一步深入到程序的执行、调试和测试环节,帮助开发者掌握运行、定位问题和验证代码质量的方法。这是一章实用的教程,不仅适合初学者学习Eclipse开发基础,也对希望扩展Eclipse功能的专业开发者极具价值,特别是在插件开发方面。通过阅读本章,读者可以掌握如何利用Eclipse的强大功能,提高开发效率和项目的可维护性。
资源详情
资源推荐
xxxvii
Preface
When we were first exposed to Eclipse back in late 1999, we were struck by
the magnitude of the problem IBM was trying to solve. IBM wanted to unify
all its development environments on a single code base. At the time, the com-
pany was using a mix of technology composed of a hodgepodge of C/C++,
Java, and Smalltalk.
Many of IBM’s most important tools, including the award-winning Visual-
Age for Java IDE, were actually written in Smalltalk—a wonderful language
for building sophisticated tools, but one that was rapidly losing market share
to languages like Java. While IBM had one of the world’s largest collections of
Smalltalk developers, there wasn’t a great deal of industry support for it out-
side of IBM, and there were very few independent software vendors (ISVs)
qualified to create Smalltalk-based add-ons.
Meanwhile, Java was winning the hearts and minds of developers world-
wide with its promise of easy portability across a wide range of platforms,
while providing the rich application programming interface (API) needed to
build the latest generation of Web-based business applications. More impor-
tant, Java was an object-oriented (OO) language, which meant that IBM
could leverage the large body of highly skilled object-oriented developers it
had built up over the years of creating Smalltalk-based tools. In fact, IBM
took its premiere Object Technology International (OTI) group, which had
been responsible for creating IBM’s VisualAge Smalltalk and VisualAge Java
environments (VisualAge Smalltalk was the first of the VisualAge brand fam-
ily and VisualAge Java was built using it), and tasked the group with creating
a highly extensible integrated development environment (IDE) construction
set based in Java. Eclipse was the happy result.
(FOLSVH3OXJLQV7KLUG(GLWLRQ 3DJH 5HWXUQWR7DEOHRI&RQWHQWV
xxxviii
Preface
OTI was able to apply its highly evolved OO skills to produce an IDE
unmatched in power, flexibility, and extensibility. The group was able to rep-
licate most of the features that had made Smalltalk-based IDEs so popular the
decade before, while simultaneously pushing the state of the art in IDE devel-
opment ahead by an order of magnitude.
The Java world had never seen anything as powerful or as compelling as
Eclipse, and it now stands, with Microsoft’s .NET, as one of the world’s pre-
mier development environments. That alone makes Eclipse a perfect platform
for developers wishing to get their tools out to as wide an audience as possible.
The fact that Eclipse is completely free and open source is icing on the cake.
An open, extensible IDE base that is available for free to anyone with a com-
puter is a powerful motivator to the prospective tool developer.
It certainly was to us. At Instantiations and earlier at ObjectShare, we had
spent the better part of a decade as entrepreneurs focused on building add-on
tools for various IDEs. We had started with building add-ons for Digitalk’s
Smalltalk/V, migrated to developing tools for IBM’s VisualAge Smalltalk, and
eventually ended up creating tools for IBM’s VisualAge Java (including our
award-winning VA Assist product and our jFactor product, one of the world’s
first Java refactoring tools). Every one of these environments provided a
means to extend the IDE, but they were generally not well-documented and
certainly not standardized in any way. Small market shares (relative to tools
such as VisualBasic) and an eclectic user base also afflicted these environments
and, by extension, us.
As an Advanced IBM Business Partner, we were fortunate to have built a
long and trusted relationship with the folks at IBM responsible for the creation
of Eclipse. That relationship meant that we were in a unique position to be
briefed on the technology and to start using it on a daily basis nearly a year and
half before the rest of the world even heard about it. When IBM finally
announced Eclipse to the world in mid-2001, our team at Instantiations had
built some of the first demo applications IBM had to show. Later that year
when IBM released its first Eclipse-based commercial tool, WebSphere Studio
Application Developer v4.0 (v4.0 so that it synchronized with its then current
VisualAge for Java v4.0), our CodePro product became the very first commer-
cial add-on available for it (and for Eclipse in general) on the same day.
Currently, the CodePro product adds hundreds of enhancements to
Eclipse and any Eclipse-based IDE. Developing CodePro over the last several
years has provided us with an opportunity to learn the details of Eclipse devel-
opment at a level matched by very few others (with the obvious exception of
the IBM and OTI developers, who eat, sleep, and breathe this stuff on a daily
basis). CodePro has also served as a testbed for many of the ideas and tech-
(FOLSVH3OXJLQV7KLUG(GLWLRQ 3DJH 5HWXUQWR7DEOHRI&RQWHQWV
Preface
xxxix
niques presented in this book, providing us with a unique perspective from
which to write.
Goals of the Book
This book, originally titled Eclipse: Building Commercial-Quality Plug-ins,
provides an in-depth description of the process involved in building commer-
cial-quality extensions for the Eclipse and the IBM Software Development
Platform (SDP)—IBM’s commercial version of Eclipse—development envi-
ronments. To us, “commercial-quality” is synonymous with “commercial-
grade” or “high-quality.” Producing a commercial-quality plug-in means
going above and beyond the minimal requirements needed to integrate with
Eclipse. It means attending to all those details that contribute to the “fit and
polish” of a commercial offering.
In the world of Eclipse plug-ins, very few people take the time to really go
the extra mile, and most plug-ins fall into the open source, amateur category.
For folks interested in producing high-quality plug-ins (which would certainly
be the case for any software company wanting to develop Eclipse-based prod-
ucts), there are many details to consider. Our book is meant to encompass the
entire process of plug-in development, including all the extra things that need
to be done to achieve high-quality results. This book has several complemen-
tary goals:
• Provide a quick introduction to using Eclipse for new users
• Provide a reference for experienced Eclipse users wishing to expand their
knowledge and improve the quality of their Eclipse-based products
• Provide a detailed tutorial on creating sophisticated Eclipse plug-ins suit-
able for new and experienced users
The first three chapters introduce the Eclipse development environment
and outline the process of building a simple plug-in. The intention of these
chapters is to help developers new to Eclipse quickly pull together a plug-in
they can use to experiment with.
The first chapter, in particular, introduces the reader to the minimum set
of Eclipse tools that he or she will need to build plug-ins. It is a fairly quick
overview of the Eclipse IDE and relevant tools (one could write an entire book
on that topic alone), and we would expect expert Eclipse users to skip that
chapter entirely.
The second chapter introduces the example that we will use throughout
most of the book and provides a very quick introduction to building a working
plug-in from start to finish. The third chapter presents a high-level overview of
the Eclipse architecture and the structure of plug-ins and extension points.
(FOLSVH3OXJLQV7KLUG(GLWLRQ 3DJH 5HWXUQWR7DEOHRI&RQWHQWV
xl
Preface
The fourth and fifth chapters cover the Standard Widget Toolkit (SWT)
and JFace, which are the building blocks for all Eclipse user interfaces (UIs).
These chapters can act as a stand-alone reference; they are intended to provide
just enough detail to get you going. Both of these topics are rich enough to
warrant entire books and several are currently available.
The subsequent chapters, comprising the bulk of this book, focus on
describing each of the various aspects of plug-in development and providing
the reader with in-depth knowledge of how to solve the various challenges
involved. Each chapter focuses on a different aspect of the problem, and
includes an overview, a detailed description, a discussion of challenges and
solutions, diagrams, screenshots, cookbook-style code examples, relevant API
listings, and a summary.
We have structured the book so that the most important material required
for every plug-in project appears in the first half of it. Some of the packaging-
and building-oriented material is placed at the end (for example, features and
product builds). This organizational scheme left several topics that, while not
critical to every plug-in, were important to the creation of commercial-quality
plug-ins. These topics have been placed in the second half of the book in an
order based on the importance of each and how it related to earlier material.
Internationalization, for example, is one of those topics. It isn’t critical, and it
isn’t even all that complicated when you get right down to it. It is, however,
important to the book’s premise, so we felt it was a topic we needed to include.
Since we aren’t assuming that the reader is an Eclipse expert (or even a plug-
in developer), we have tried to take the reader through each of the important
steps in as much detail as possible. While it is true that this is somewhat intro-
ductory, it is also an area that most plug-in developers totally ignore and have
little or no experience with.
Sometimes a developer needs a quick solution, while at other times that
same developer needs to gain in-depth knowledge about a particular aspect of
development. The intent is to provide several different ways for the reader to
absorb and use the information so that both needs can be addressed. Relevant
APIs are included in several of the chapters so that the book can be used as a
stand-alone reference during development without requiring the reader to
look up those APIs in the IDE. Most API descriptions are copied or para-
phrased from the Eclipse platform Javadoc.
As the originators of Eclipse and a major consumer of Eclipse-based tech-
nology, IBM is justifiably concerned that new plug-ins meet the same high-
quality standards that IBM adheres to. To that end, IBM has established a rig-
orous Ready for Rational Software (RFRS) certification program meant to
(FOLSVH3OXJLQV7KLUG(GLWLRQ 3DJH 5HWXUQWR7DEOHRI&RQWHQWV
Preface
xli
ensure the availability of high-quality add-ons to Eclipse and the IBM Soft-
ware Development Platform. RFRS certification should be one of the ultimate
goals for anyone wishing to build and market Eclipse plug-ins. Every chapter
covers any relevant RFRS certification criteria and strategies.
The examples provided as part of the chapters describe building various
aspects of a concrete Eclipse plug-in that you will see evolve over the course
of the book. When used as a reference rather than read cover-to-cover, you
will typically start to look in one chapter for issues that are covered in another.
To facilitate this type of searching, every chapter contains numerous cross-ref-
erences to related material that appears in other chapters.
Intended Audience
The audience for this book includes Java tool developers wishing to build
products that integrate with Eclipse and other Eclipse-based products, rela-
tively advanced Eclipse users wishing to customize their environments, or any-
one who is curious about what makes Eclipse tick. You do not need to be an
expert Eclipse user to make use of this book because we introduce most of
what you need to know to use Eclipse in Chapter 1, Using Eclipse Tools. While
we don’t assume any preexisting Eclipse knowledge, we do anticipate that the
reader is a fairly seasoned developer with a good grasp of Java and at least a
cursory knowledge of extensible markup language (XML).
Conventions Used in This Book
The following formatting conventions are used throughout the book.
Bold—the names of UI elements such as menus, buttons, field labels,
tabs, and window titles
Italic—emphasize new terms and Web site addresses
Courier
—code examples, references to class and method names, and
filenames
Courier Bold
—emphasize code fragments
“Quoted text”—quotation marks surrounding text indicates words to be
entered by the user
(FOLSVH3OXJLQV7KLUG(GLWLRQ 3DJH 5HWXUQWR7DEOHRI&RQWHQWV
剩余856页未读,继续阅读
小计天空
- 粉丝: 4
- 资源: 39
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- AirKiss技术详解:无线传递信息与智能家居连接
- Hibernate主键生成策略详解
- 操作系统实验:位示图法管理磁盘空闲空间
- JSON详解:数据交换的主流格式
- Win7安装Ubuntu双系统详细指南
- FPGA内部结构与工作原理探索
- 信用评分模型解析:WOE、IV与ROC
- 使用LVS+Keepalived构建高可用负载均衡集群
- 微信小程序驱动餐饮与服装业创新转型:便捷管理与低成本优势
- 机器学习入门指南:从基础到进阶
- 解决Win7 IIS配置错误500.22与0x80070032
- SQL-DFS:优化HDFS小文件存储的解决方案
- Hadoop、Hbase、Spark环境部署与主机配置详解
- Kisso:加密会话Cookie实现的单点登录SSO
- OpenCV读取与拼接多幅图像教程
- QT实战:轻松生成与解析JSON数据
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功