Professional Eclipse 3 for Java Developers

by
Edition: 1st
Format: Paperback
Pub. Date: 2004-11-12
Publisher(s): Wrox
List Price: $53.50

Buy New

Usually Ships in 8 - 10 Business Days.
$50.95

Rent Book

Select for Price
There was a problem. Please try again later.

Rent Digital

Rent Digital Options
Online:1825 Days access
Downloadable:Lifetime Access
$60.00
$60.00

Used Book

We're Sorry
Sold Out

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

Step-by-step guide that introduces novices to using all major features of Eclipse 3 Eclipse is an open source extensible integrated development environment (IDE) that helps Java programmers build best-of-breed integrated tools covering the whole software lifecycle-from conceptual modeling to deployment Eclipse is fast becoming the development platform of choice for the Java community Packed with code-rich, real-world examples that show programmers how to speed up the development of applications by reusing and extending existing Eclipse components Describes SWT and JFace (Eclipse's alternative to the Java AWT and Swing) and demonstrates them in practice in a JavaLayer based MP3 player Shows how Eclipse can be used as a tool platform and application framework

Author Biography

Berthold Daum has a Ph.D in Mathematics and is a professional Java and XML developer who has been using Eclipse since it was first developed. Mr. Daum specializes in innovative electronic business technology and electronic content production; his clients include SAP Integrated Services AG and Software AG. His experience in software training and ability to anticipate the needs of professional developers has been demonstrated in his previous books, including Eclipse 2 for Java Developers (Wiley) and Modeling Business Objects with XML Schema (Morgan-Kaufmann).

Mr. Daum Studied photography in Melbourne and has both exhibited and published his images of Australia's natural beauty.

Table of Contents

Introduction ix
Introduction to Eclipse
1(24)
Installing Eclipse
1(4)
The First Application: Hello World
5(5)
Perspectives
5(2)
Projects
7(1)
Create a New Class
7(2)
Launch
9(1)
The Most Important Preferences for Java Development
10(8)
Workbench Preferences
11(1)
Installed JREs
12(2)
Compiler Preferences
14(1)
Formatting Code
15(1)
Templates
16(2)
Tasks and Problems
18(4)
Problems, Problems
19(2)
General Tasks
21(1)
Bookmarks
22(1)
The Scrapbook
22(2)
Summary
24(1)
Effective Programming with Eclipse
25(20)
Little Helpers
25(11)
System Information
25(1)
Help and Hover
26(1)
Java Information Views
27(1)
Automatic Code Completion
28(5)
The Correction Assistant
33(2)
Convenience Functions of the Java Editor
35(1)
Source Code Navigation
36(2)
Refactoring Code
38(4)
Modifying Types
38(1)
Refactoring Code
39(3)
Undo and Redo
42(1)
Local History
43(1)
Comparing Resources
43(1)
Replacing with an Older Version
43(1)
Restore Deleted Resource
43(1)
Summary
44(1)
The Art of (Visual) Composition
45(6)
Installation
45(1)
Invocation
46(1)
Preferences
46(1)
Composition
46(2)
Beans and Bean Properties
48(1)
Generic Beans
48(1)
Properties
49(1)
Layouts
49(1)
Event Processing
49(1)
Summary
50(1)
Organizing Your Code
51(22)
The Workbench
51(1)
Resources
52(2)
Resource Types
52(1)
Where Resources Are Stored
52(1)
Synchronizing Resources
53(1)
Navigation
53(1)
Associations
54(1)
Packages
55(2)
Folders and Packages
55(1)
Navigation
56(1)
Hierarchy
56(1)
The Outline View
57(3)
Representation
58(1)
Context Functions
59(1)
Searching
60(3)
The Search Function
60(2)
Find and Replace
62(1)
Marking Name Occurrences
63(1)
Arranging Editors and Views
63(2)
Docked Windows
63(1)
Stacked Windows
64(1)
Desktop Windows
64(1)
FastView
64(1)
Opening and Closing Windows
65(1)
Maximizing Windows
65(1)
Minimizing Views
65(1)
Managing Perspectives
65(2)
Defining New Perspectives
65(1)
Configuring Perspectives
66(1)
Importing Files
67(2)
Project Properties
69(2)
The Java Browsing Perspective
71(1)
Summary
72(1)
Project One: Duke Speaks
73(40)
Setting Up the Project
73(1)
A Short Excursion into Speech Synthesis
74(1)
Extending the Free TTS System
75(9)
Animation Events
75(2)
The Animator
77(4)
Embedding into FreeTTS
81(2)
Connection with the Java Audio System
83(1)
The User Interface
84(26)
The Animated Face
85(2)
The Control Panel
87(1)
The Model
87(4)
The Presentation
91(15)
The Complete Application
106(3)
Exporting the application
109(1)
Bibliography
110(1)
Summary
110(3)
Project Development
113(16)
Debugging
113(7)
The Debug Configuration
113(1)
The Debug Perspective
114(1)
Controlling Program Execution
115(2)
Managing Breakpoints
117(1)
The Java Console
118(1)
Remote Debugging
119(1)
JUnit
120(5)
Setting Up JUnit
120(2)
Creating a Test Suite
122(2)
Running a Test Suite
124(1)
Documentation
125(3)
Try It Out: Javadoc Options
126(1)
Try It Out: Command-Line Options
126(2)
Summary
128(1)
Advanced Topics of Project Development
129(8)
Developing in a Team
129(6)
Setting Up a Repository
130(2)
Projects in the Repository
132(1)
Version Management
133(1)
Working in a Team
133(2)
Other Functions
135(1)
External Tools
135(1)
Refresh
135(1)
Environment
135(1)
Associations
135(1)
Summary
136(1)
The SWT Library
137(68)
SWT Function Group Overview
138(1)
SWT---Pros and Cons
139(2)
Advantages of SWT
140(1)
Disadvantages of SWT
140(1)
The SWT Package
141(1)
Events
141(4)
Listeners
141(1)
Adapters
142(1)
Events
142(1)
Overview of Listeners, Adapters, and Events
143(2)
Widgets
145(32)
The Widget Class
146(1)
The Control Class
146(1)
Visual Overview
146(1)
Displays, Shells, and Monitors
146(6)
Dialogs
152(3)
Composites, Groups, and Canvas
155(1)
Buttons
156(2)
Sliders and Scales
158(1)
ProgressBar
159(1)
Scrollable and ScrollBar
159(1)
Text Fields and Labels
159(2)
Tables, Lists, and Combos
161(5)
Trees
166(1)
Sashes
167(1)
Tabbed Folders
168(1)
Toolbars
169(1)
Moveable Tool Groups (CoolBar)
170(1)
Menus
170(4)
Custom Widgets
174(3)
The Browser Widget
177(1)
Layouts
177(8)
Visual Overview
178(1)
The FillLayout Class
178(1)
The RowLayout Class
179(1)
The GridLayout Class
180(2)
The FormLayout Class
182(2)
The StackLayout class
184(1)
Graphics
185(6)
The Graphics Context
185(1)
Colors
186(1)
Fonts
187(2)
Images
189(1)
The Cursor
190(1)
Widgets That Swing
191(5)
Embedded Contents
192(1)
Events
192(4)
Output to a Printer
196(2)
Data Transfer
198(2)
The Clipboard
198(1)
Drag and Drop
199(1)
Resource Management
200(1)
Windows32 Support (OLE)
201(1)
SWT on the Pocket PC
202(1)
Accessibility
202(1)
Summary
203(2)
JFace
205(32)
Resource Management
205(1)
The FontRegistry Class
205(1)
The ImageRegistry Class
206(1)
The JFaceColors Class
206(1)
The JFaceResources Class
206(1)
Dialogs and Windows
206(8)
Some Dialog Subclasses
207(3)
Implementing Your Own Dialog Classes
210(3)
Making Dialogs Persistent
213(1)
Viewers
214(4)
The Viewer Event Model
215(1)
The Viewer Hierarchy
215(2)
Cell Editors
217(1)
Data Transfer
218(1)
Text Processing
218(8)
Text Processing Base Classes
218(8)
The ProjectionViewer
226(1)
Comfortable Text Fields and Combos
226(1)
Actions and Menus
226(2)
The IAction Interface
226(1)
The Managers
227(1)
Wizards
228(2)
The Wizard Class
228(1)
The Wizard Page Class
229(1)
The WizardSelectionPage Class
230(1)
The WizardDialog Class
230(1)
Preferences
230(5)
The PreferenceStore and PreferenceConverter Classes
231(1)
The PreferencePage Class
232(1)
Field Editors
232(1)
Preference Page Trees
233(2)
Summary
235(2)
Project Two: Jukebox
237(76)
Design Goals and How to Achieve Them
237(1)
Installing the Project
238(3)
The Player Module
241(20)
Layout
241(1)
Threads
242(1)
The Player.java Class
243(17)
BasicPlayerListener
260(1)
The Playlist Domain Model
261(14)
The Interface
261(7)
Implementing IPlayList
268(2)
Accessing Features
270(1)
Managing Entries
271(2)
Content Provider
273(1)
Playlist Switch
273(1)
Selections
274(1)
The Description Window
275(3)
The DescriptionWindow Class
276(2)
The Playlist Viewer
278(17)
The PlaylistWindow Class
278(3)
The PlaylistViewer Class
281(8)
Nested Grid Layout
289(1)
Toolbar
290(2)
File-Selection Dialogs
292(1)
Menu
293(2)
The PlaylistLabelProvider Class
295(4)
Returning a Warning Icon
296(1)
Cell Text
297(2)
The FileCellEditor Class
299(1)
The Description Editor
300(2)
The DescriptionCellEditor Class
300(2)
The DescriptionEditorDialog Class
302(9)
Code Scanner
303(1)
Content Assistant
304(3)
SourceViewer Configuration
307(1)
SourceViewer
308(3)
Deploying the Jukebox
311(1)
Summary
311(2)
Developing Plug-Ins for the Eclipse Platform
313(74)
The Architecture of the Eclipse Platform
314(4)
Extension Points
314(1)
OSGi
314(1)
A Minimal Platform
315(1)
Rich Client Platform vs. IDE
315(1)
Resource Management
315(1)
User Interface
316(1)
Help System
316(1)
Team Support
316(1)
Other Plug-in Groups
317(1)
Architecture Summary
317(1)
The Core Classes of the Eclipse Platform
318(2)
The Platform Class
318(1)
The Plugin Class
318(1)
The Preferences Class
319(1)
Path Specifications
319(1)
Monitoring Long-Running Processes
320(1)
The Eclipse Workspace
320(7)
Resources
320(4)
Markers
324(1)
Reacting to Resource Changes
325(1)
Managing Long-Running Processes
326(1)
Configuring Plug-ins
327(17)
The Plug-in Development Perspective
327(2)
The Plug-in Manifest
329(3)
The Most Important SDK Extension Points
332(9)
The Schema Editor
341(3)
Components of the Eclipse User Interface
344(41)
Forms
344(6)
The Eclipse Workbench
350(1)
The Architecture of the Eclipse Workbench
351(1)
Event Processing in the Eclipse Workbench
352(3)
Editors
355(7)
Views
362(5)
Actions
367(5)
Dialogs
372(2)
Workbench Wizards
374(3)
Preferences and Property Pages
377(1)
Defining Perspectives
377(2)
The Help System
379(4)
Cheat Sheets
383(2)
Summary
385(2)
Developing Your Own Eclipse-Based Products
387(20)
Embedded Ant
388(2)
Configuration
388(1)
Editing Ant Scripts
389(1)
Plug-ins and Fragments
390(1)
Features
391(2)
Creating and Editing Features
391(2)
Deployment
393(6)
Deploying a Feature
393(1)
Deploying Complete Products
394(1)
Customizing Products
394(2)
Populating the Workspace
396(2)
Creating Update Sites
398(1)
Installing from an Update Site
399(2)
Adding an Update Site
400(1)
Installing Features
400(1)
Updating Features
400(1)
Managing the Configuration
400(1)
Install Handlers
401(1)
Internationalizing Products
401(4)
Text Constants in Programs
402(1)
Text Constants in Manifest Files
403(1)
Help Texts and Cheat Sheets
404(1)
Deploying National Language Resource Bundles
405(1)
Patches
405(1)
Summary
405(2)
Project Three: A Spell Checker as an Eclipse Plug-In
407(94)
The Spell Checker Core Classes
408(2)
The Engine
408(1)
Overview
409(1)
Setting Up the Project
410(2)
The Plug-in Configuration
412(7)
The Manifest plugin.xml
413(4)
The Schema documentTokenizer.exsd
417(2)
Imported Files
419(1)
The Plugin Class
419(5)
Dictionary URL
421(1)
Initializing Preferences
422(1)
The Manager
423(1)
The Check Spelling Action
424(15)
The SpellCheckingTarget Class
425(1)
Factory Method
426(1)
Selections
427(1)
Document Management
428(1)
Text Replacement
429(1)
Disposal
430(1)
The CheckSpellingActionDelegate Class
431(8)
The Correction Window
439(13)
The SpellCorrectionView Class
439(10)
View Actions
449(1)
Managing Images
450(2)
Coordinating Core Classes with GUI Classes
452(11)
The Manager
453(1)
Selecting the Plug-in
454(3)
Running the Engine
457(1)
Managing Engines
458(1)
Creating Engines
459(3)
Processing Bad Words
462(1)
Operations
462(1)
Analyzing Documents
463(1)
Configuring the Spell Checker
463(10)
Preferences
463(1)
Domain Model
464(2)
The GUI
466(5)
Reading from the PreferenceStore
471(2)
The Help System
473(4)
The Help Table of Contents
473(1)
Context-Sensitive Help
473(1)
Active Help
474(2)
Running the Help Action
476(1)
A Plug-in for Java Properties
477(7)
Setting Up the Project
477(1)
The Manifest
478(1)
Tokenizer Extension
478(1)
Manifest
479(1)
The Plugin Class
480(1)
The Preferences
481(1)
The Preference Page
482(1)
The Java-Properties Tokenizer
483(1)
The Help System
483(1)
Internationalizing the Spell Checker
484(6)
Text Constants in Java Code
484(3)
Text Constants in Manifest Files
487(1)
Creating a Language Fragment
487(3)
Deploying the Spell Checker
490(9)
Defining the Spell Checker Feature
490(2)
Configuring Ant Scripts
492(3)
Defining the Language Feature
495(2)
Defining the Update Site
497(1)
Installation
498(1)
Summary
499(2)
The Rich Client Platform
501(10)
Definition and Motivation
501(1)
Plug-ins and the RCP
502(1)
Creating an Application
503(4)
The IPlatformRunnable Interface
503(1)
The WorkbenchAdvisor Class
503(4)
Testing a Rich Client Application
507(1)
Deploying a Rich Client Application
507(1)
Advanced Product Customization
508(1)
The Global Welcome Screen
508(1)
Summary
509(2)
Project 4: The Hex Game as a Rich Client Application
511(26)
Overview
511(1)
Setting Up the Project
512(1)
The Manifest plugin.xml
512(5)
Required Eclipse Plug-ins
514(1)
Declaring the Application
514(1)
Defining a Perspective
515(1)
Defining a View
515(1)
Product Customization
515(1)
Linking the Welcome Screen
515(1)
Adding Help
516(1)
The Completed Manifest
516(1)
The RcpApplication Class
517(1)
The RcpWorkbenchAdvisor Class
518(1)
The RcpPerspective Class
519(1)
The IGame and IStatusListener Interfaces
520(1)
The IStatusListener Interface
520(1)
The IGame Interface
520(1)
The HexView Class
521(6)
The Game Engine
527(4)
The Welcome Screen
531(3)
Test
534(1)
Deployment
534(1)
Summary
535(2)
Conclusions and Outlook
537(8)
Programming Style
537(4)
Executable Prototypes
538(1)
Automated Tests
538(1)
Refinements
538(2)
Embrace Change
540(1)
Save Energy
541(1)
Java 1.5
541(1)
Summary
542(3)
Appendix A: Useful Plug-ins for Eclipse
545(6)
Appendix B: Migrating Projects to a New Eclipse Version
551(4)
Projects
551(1)
Plug-ins
552(1)
Migration to Eclipse 3
552(3)
Appendix C: Important Downloads
555(2)
Project One: Duke Speaks
555(1)
Project Two: Jukebox
555(1)
Project Three: A Spell Checker as an Eclipse Plug-In
555(1)
Book Web Site
556(1)
Appendix D: Bibliography
557(2)
Index 559

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.