HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
A new edition of this title is available, ISBN-10: 0321553462 ISBN-13: 9780321553461
"I'm often asked, 'What are the best books about Eclipse?' Number one on my list, every time, is Eclipse: Building Commercial-Quality Plug-ins. I find it to be the clearest and most relevant book about Eclipse for the real-world software developer. Other Eclipse books focus on the internal Eclipse architecture or on repeating the Eclipse documentation, whereas this book is laser focused on the issues and concepts that matter when you're trying to build a product."
-- Bjorn Freeman-Benson
Director, Open Source Process, Eclipse Foundation
"As the title suggests, this massive tome is intended as a guide to best practices for writing Eclipse plug-ins. I think in that respect it succeeds handily. Before you even think about distributing a plug-in you've written, read this book."
-- Ernest Friedman-Hill
Sheriff, JavaRanch.com
"Eclipse: Building Commercial-Quality Plug-ins was an invaluable training aid for all of our team members. In fact, training our team without the use of this book as a base would have been virtually impossible. It is now required reading for all our developers and helped us deliver a brand-new, very complex product on time and on budget thanks to the great job this book does of explaining the process of building plug-ins for Eclipse."
-- Bruce Gruenbaum
"This is easily one of the most useful books I own. If you are new to developing Eclipse plug-ins, it is a 'must-have' that will save you lots of time and effort. You will find lots of good advice in here, especially things that will help add a whole layer of professionalism and completeness to any plug-in. The book is very focused, well-structured, thorough, clearly written, and doesn't contain a single page of 'waffly page filler.' The diagrams explaining the relationships between the different components and manifest sections are excellent and aid in understanding how everything fits together. This book goes well beyond Actions, Views, and Editors, and I think everyone will benefit from the authors' experience. I certainly have."
-- Tony Saveski
"The authors of this seminal book have decades of proven experience with the most productive and robust software engineering technologies ever developed. Their experiences have now been well applied to the use of Eclipse for more effective Java development. A must-have for any serious software engineering professional!"
-- Ed Klimas
"Just wanted to also let you know this is an excellent book! Thanks for putting forth the effort to create a book that is easy to read and technical at the same time!"
-- Brooke Hedrick
"The key to developing great plug-ins for Eclipse is understanding where and how to extend the IDE, and that's what this book gives you. It is a must for serious plug-in developers, especially those building commercial applications. I wouldn't be without it."
-- Brian Wilkerson
"If you're looking for just one Eclipse plug-in development book that will be your guide, this is the one. While there are other books available on Eclipse, few dive as deep as Eclipse: Building Commercial-Quality Plug-ins."
-- Simon Archer
Eclipse has established itself as a dominant force in the application-development space. Key to the success of Eclipse is the ability of developers to extend its functionality using plug-ins.
This new edition of Eclipse: Building Commercial-Quality Plug-ins is the definitive, start-to-finish guide to building commercial-quality Eclipse plug-ins, with an emphasis on adding the sophistication and polish that paying customers demand. The book provides both a quick introduction to using Eclipse for new users and a reference for experienced Eclipse users wishing to expand their knowledge and improve the quality of their Eclipse-based products.
Revised to take advantage of pure Eclipse 3.1 and 3.2 APIs, this widely praised bestseller presents detailed, practical coverage of every aspect of plug-in development and specific solutions for the challenges developers are most likely to encounter. All code examples, relevant API listings, diagrams, and screen captures have been updated.
Some Eclipse concepts--such as actions, views, and editors--have not changed radically, but now have additional functionality and capabilities. Other areas, such as the Eclipse plug-in infrastructure, have changed drastically due to the Eclipse shift towards an OSGi-based infrastructure. This edition is fully updated to address these new advances for Eclipse developers.
This book is designed for anyone who wants a deep understanding of Eclipse, and every experienced developer interested in extending Eclipse or the Rational Software Development Platform.
An Overview of the Eclipse Infrastructure
Download the Sample Chapter related to this title.
Foreword by Skip McGaughey xxxi
Foreword by Simon Archer xxxiii
Preface xxxvChapter 1: Using Eclipse Tools 1
1.1 Getting Started 1
1.2 The Eclipse Workbench 3
1.3 Setting Up Your Environment 14
1.4 Creating a Project 19
1.5 Navigating 26
1.6 Searching 28
1.7 Writing Code 34
1.8 Team Development Using CVS 48
1.9 Running Applications 54
1.10 Introduction to Debugging 58
1.11 Introduction to Testing 61
1.12 Summary 63
2.1 The Favorites Plug-in 65
2.2 Creating a Plug-in Project 66
2.3 Reviewing the Generated Code 71
2.4 Building a Product 81
2.5 Installing and Running the Product 86
2.6 Debugging the Product 88
2.7 PDE Views 90
2.8 Writing Plug-in Tests 92
2.9 Summary 98
3.1 Structural Overview 101
3.2 Plug-in Directory or JAR file 104
3.3 Plug-in Manifest 107
3.4 Plug-in Class 114
3.5 Plug-in Model 119
3.6 Logging 122
3.7 Eclipse Plug-ins 124
3.8 Summary 125
4.1 SWT History and Goals 127
4.2 SWT Widgets 130
4.3 Layout Management 170
4.4 Resource Management 180
4.5 Summary 181
5.1 List-Oriented Viewers 185
5.2 Text Viewers 203
5.3 Summary 206
6.1 IAction versus IActionDelegate 207
6.2 Workbench Window Actions 209
6.3 Object Actions 224
6.4 View Actions 237
6.5 Editor Actions 244
6.6 Key Bindings 251
6.7 RFRS Considerations 256
6.8 Summary 257
7.1 View Declaration 261
7.2 View Part 263
7.3 View Actions 283
7.4 Linking the View 305
7.5 Saving View State 308
7.6 Testing 314
7.7 Image Caching 315
7.8 Auto-sizing Table Columns 316
7.9 RFRS Considerations 319
7.10 Summary 323
8.1 Editor Declaration 326
8.2 Editor Part 330
8.3 Editing 344
8.4 Editor Lifecycle 350
8.5 Editor Actions 354
8.6 Linking the Editor 369
8.7 RFRS Considerations 369
8.8 Summary 374
9.1 IResourceChangeListener 375
9.2 Processing Change Events 379
9.3 Batching Change Events 382
9.4 Progress Monitor 383
9.5 Delayed Changed Events 387
9.6 Summary 388
10.1 Creating a Perspective 389
10.2 Enhancing an Existing Perspective 396
10.3 RFRS Considerations 403
10.4 Summary 404
12.1 Creating a Preference Page 451
12.2 Preference Page APIs 453
12.3 Preference APIs 467
12.4 RFRS Considerations 474
12.5 Summary 475
13.1 Creating Properties 477
13.2 Displaying Properties in the Properties Dialog 481
13.3 Displaying Properties in the Properties View 489
13.4 Property Pages Reused as Preference Pages 493
13.5 RFRS Considerations 495
13.6 Summary 495
14.1 Builders 499
14.2 Markers 512
14.3 Natures 525
14.4 RFRS Considerations 535
14.5 Summary 537
15.1 Using Help 539
15.2 Implementing Help 542
15.3 Context-Sensitive Help (F1) 552
15.4 Accessing Help Programmatically 560
15.5 Cheat Sheets 563
15.6 RFRS Considerations 570
15.7 Summary 574
16.1 Externalizing the Plug-in Manifest 576
16.2 Externalizing Plug-in Strings 578
16.3 Using Fragments 587
16.4 Summary 594
17.1 The Extension Point Mechanism 595
17.2 Defining an Extension Point 597
17.3 Code Behind an Extension Point 607
17.4 Extension Point Documentation 614
17.5 Using the Extension Point 615
17.6 RFRS Considerations 617
17.7 Summary 618
18.1 Feature Projects 620
18.2 Branding 631
18.3 Update Sites 637
18.4 RFRS Considerations 647
18.5 Summary 648
19.1 A Brief Introduction to Ant 651
19.2 Building the Favorites Product 671
19.3 Summary 707
20.1 Advanced Search--Reference Projects 710
20.2 Accessing Internal Code 711
20.3 Adapters 714
20.4 Opening a Browser or Creating an Email 718
20.5 Types Specified in an Extension Point 723
20.6 Modifying Eclipse to Find Part Identifiers 727
20.7 Label Decorators 732
20.8 Background Tasks--Jobs API 739
20.9 Plug-in ClassLoaders 742
20.10 Early Startup 747
20.11 Rich Client Platform 748
20.12 Conclusion 749
A.1 Plug-ins 751
A.2 Resources 760
Download the Foreword related to this title.
Download the Index file related to this title.