- Shopping Bag ( 0 items )
Build Powerful, Cross-Platform Rich Client Applications
Eclipse is more than a state-of-the-art IDE: its Rich Client Platform (RCP) plug-ins form an outstanding foundation for any desktop application, from chat applications to enterprise software front-ends. In Eclipse Rich Client Platform, two leaders of the Eclipse RCP project show exactly how to leverage Eclipse for rapid, efficient, cross-platform desktop development.
In addition to explaining the power of Eclipse as a desktop application development platform, the authors walk step-by-step through developing a fully featured, branded RCP application. They introduce a wide range of techniques, including developing pluggable and dynamically extensible systems, using third-party code libraries, and packaging applications for diverse environments. You'll build, refine, and refactor a complete prototype; customize the user interface; add Help and Update features; and build, brand, and ship the finished software.
If you want to develop and deploy world-class Java applications with rich, native GUIs, and use Eclipse RCP—get this book.
CD-ROM contains the Eclipse 3.1 SDK, Eclipse 3.1 RCP SDK, and Eclipse 3.1 RCP Delta Pack appropriate for Windows, Linux, and Mac OS X. It also contains all the code samples developed in the book.
© Copyright Pearson Education. All rights reserved.
|Ch. 1||Eclipse as a rich client platform||3|
|Ch. 2||Eclipse RCP concepts||13|
|Ch. 3||Tutorial introduction||29|
|Ch. 4||The hyperbola application||41|
|Ch. 5||Starting the hyperbola prototype||61|
|Ch. 6||Adding actions||81|
|Ch. 7||Adding a chat editor||101|
|Ch. 8||Branding hyperbola||113|
|Ch. 9||Packaging hyperbola||127|
|Ch. 10||Messaging support||135|
|Ch. 11||Adding a login dialog||153|
|Ch. 12||Adding key bindings||175|
|Ch. 13||Adding help||185|
|Ch. 14||Adding update||197|
|Ch. 15||Workbench advisors||215|
|Ch. 16||Perspectives, views, and editors||235|
|Ch. 18||Customizing workbench windows||291|
|Ch. 19||Customizing the presentation of views and editors||307|
|Ch. 20||Integrating code libraries||327|
|Ch. 21||Installing and updating plug-ins||343|
|Ch. 22||Dynamic plug-ins||355|
|Ch. 23||RCP everywhere||371|
|Ch. 24||Building hyperbola||399|
|Ch. 25||The last mile||427|
|Ch. 26||OSGi essentials||447|
|Ch. 27||Eclipse.org plug-ins||479|
In many ways, this book is one of the design documents for the Eclipse Rich Client Platform (RCP). It was written during the Eclipse 3.1 development cycle by members of the development team. Its chapters were sometimes written before the related function was even implemented.
The exercise of explaining how things work forced upon us the realities of using the mechanisms and concepts that make up the Eclipse RCP. This was not always pleasant. It did, however, give us a unique opportunity to correct the course of the Eclipse RCP.
Whenever we came across something that was hard to explain or compli-cated to use, we were able to step back and consider changing Eclipse to make things easier. Often we could, and often we (or, more accurately, the Eclipse Platform team as a whole) did. It is somewhat hard to convey the joyful feeling of deleting a complicated, detailed 10-page set of instructions or explanation and replacing it with just a paragraph detailing a new wizard or facility.
On other occasions, we gained key insights that helped us produce a clearer, simpler description of a function. Fixing bugs discovered during this process provided welcome distractions as we were writing, coding, learning, and trying to have real lives all at the same time.
We learned an incredible amount about Eclipse as an RCP and trust that you will too.
This book guides you, the would-be RCP developer, through all stages of developing and delivering an example RCP application called Hyperbola, an instant messaging chat client.
We develop Hyperbola from a blank workspace into a full-featured, branded RCP application. The choice of the instant messaging domain allowed us to plausibly touch a wide range of RCP issues from building pluggable and dynamically extensible systems to using third-party code libraries to packaging applications for a variety of environments. We cover scenarios ranging from PDAs to kiosks, to standalone desktops, to full integration with the Eclipse IDE. This book enables you to do the same with your applications.
Roughly speaking, the book is split in two. The first half, Parts I and II, sets the scene for RCP and presents a tutorial-style guide to building an RCP application. The tutorial incrementally builds Hyperbola into a functioning, branded chat client complete with Help, Update, and other advanced capabilities. The tutorial is written somewhat informally to evoke the feeling that we are there with you, working through the examples and problems. We share some of the pitfalls and mishaps that we experienced while developing the application and writing the tutorial.
The second half of the book looks at what it takes to "make it real." It's one thing to write a prototype and quite another to ship a product. Rather than leaving you hanging at the prototype stage, Parts III and IV are composed of chapters that dive into the details required to finish the job—namely, the refining and refactoring of the first prototype, customizing the user interface, and building and delivering products to your customers. This part is written as more of a reference, but it still includes a liberal sprinkling of step-by-step examples and code samples. The goal is to cover most of the major stumbling blocks reported in the community and seen in our own development of professional products.
A final part, Part V, is pure reference. It covers the essential aspects of OSGi, the base execution framework for Eclipse, and touches on various functions available in the Eclipse Platform but not covered earlier in the book.
Since one book could not possibly cover everything about Eclipse, and there are many existing books that cover Eclipse and plug-in development, we focus on the areas directly related to RCP function, API, and development.
This book is targeted at several groups of Java™ developers. Some Java programming experience is assumed and no attempt is made to introduce Java concepts or syntax.
For developers new to the Eclipse RCP, there is information about the origins of the platform, how to get started with the Eclipse IDE, and how to write your first RCP application. Prior experience with Eclipse is helpful, but not necessary.
For developers experienced with creating Eclipse plug-ins, the book covers aspects of plug-in development that are unique to RCP development. For example, not only are there special hooks for RCP applications, but RCP applications have additional characteristics such as branding, plug-in building as part of a release engineering process, deployment, and installation to name a few.
For experienced Eclipse RCP developers, this book covers new RCP features and functions in Eclipse 3.1 as well as the new tooling that makes designing, coding, and packaging RCP applications easier than ever before.
Reading this book can be a very hands-on experience. There are ample opportunities for following along and doing the steps yourself as well as writing your own code. The CD that accompanies the book includes code samples for each chapter. Instructions for managing these samples are given in Chapter 3, "Tutorial Introduction," and as needed in the text. In general, all required materials are available on the CD. Note that these materials are also available on the Web from either http://eclipse.org or http://eclipsercp.org.
The CD includes development tooling, targets, and sample code appropriate for several operating systems (OSs), including Windows,® Linux,™ and Mac OS X. In particular, the following resources are included:
The following formatting conventions are used throughout the book:
Bold—Used for UI elements such as menu paths (e.g., File > New > Project) and wizard and editor elements.
Italics—Used for emphasis and to highlight terminology.
Lucida Sans Typewriter—Used for Java code, property names, filepaths, plug-in ids, and the like that are embedded in the text of a paragraph.
Lucida Console—Used for Java code samples and XML snippets.
Lucida Console Bold Used to highlight important lines in code samples.
Notes and sidebars are used often to highlight information that readers may find interesting or helpful in using or understanding the function being described in the main text. We tried to achieve an effect similar to that of an informal pair-programming experience where you sit down with somebody and get impromptu tips and tricks here and there.
The official Web site for this book is http://eclipsercp.org/book. Additional information and errata are available at http://www.awprofessional.com/ title/0321334612. You can report problems or errors found in the book or CD to the authors at firstname.lastname@example.org. Suggestions for improvements and feedback are also very welcome.
© Copyright Pearson Education. All rights reserved.
Posted April 14, 2006
The authors describe how Eclipse is growing in ways perhaps not foreseen to its earlier designers and users. Eclipse is of course a powerful Integrated Development Environment, and other books in this series have comprehensively explained it as such. But here, we see a relatively new aspect to Eclipse. In detail, it is explained how Eclipse can function as a framework for making a user interface program (the 'client') with sophisticated ('rich') functionality. For you, the programmer, there are ways to plug your project-specific code into Eclipse. Why? The payoff is that Eclipse offers a lot of useful code, perhaps best described as plumbing, to do a lot of the routine stuff common to many UI programs. The basic idea in the book is that you gain two advantages by using Eclipse in this fashion. You get more productivity, by not having to code common and mundane functionality. Plus, debugging may be easier. Because the Eclipse code is very solid and well tested. And hence you can focus debugging attention on your specific code.Was this review helpful? Yes NoThank you for your feedback. Report this reviewThank you, this review has been flagged.
Posted October 24, 2005
Having read 'Eclipse RCP' in its entirety as a manuscript reviewer, I can tell you that this is a superb book. The authors have done a splendid job of creating a technical book that serves well as both a tutorial and as a reference. Through the development of a single example, the book covers everything you need to get started building and packaging an Eclipse RCP application. The book even includes a CD containing all the software you'll need to work through the tutorials and build your own RCP applications. While a single book could never describe every aspect of the Eclipse Platform, this book is certainly all you need to get started with Eclipse RCP, and then once you've found your feet, there are other books in the Eclipse Series that will help expand your knowledge of the Eclipse Platform and Eclipse plug-in development. This book has been produced extremely well: The text is well written, the pages are full of easy to follow code snippets, and there are sidebars that share best practices and handy tips, as well as plenty of good quality screen shots and diagrams. Buy this book. Read this book. You'll be glad you did.Was this review helpful? Yes NoThank you for your feedback. Report this reviewThank you, this review has been flagged.