Whether you use this book as an introduction to plug-in development, or as a primer, it remains the definitive book for Eclipse plug-in developers. Everything is explained clearly and with thorough examples to ensure that everyone who is interested in writing applications for the desktop will be able to understand how to use Eclipse as a platform for their programs.
This book is essential for all developers interested in extending the Eclipse platform or any other platform that supports Eclipse plug-ins. It is my “desert island” development book – it never leaves my side.
Chapter 1 introduces Eclipse to the readers, including all the new capabilities of Eclipse 3.4. An overview of Mylyn is provided – while not part of the core, it is a very popular developer tool, and as such a clever addition. If you are new to Eclipse this is essential to read, as it introduces all of the core Eclipse concepts such as the Workbench, Perspectives, Views and Editors. As these are terms used throughout the book, knowledge of these concepts is essential. This chapter is more about developing using Eclipse than being focussed on any coding for plug-in creation.
Chapter 2 brings you straight into the action with a simple plug-in example, illustrating the Plug-in Development Environment (PDE), how to use plugin.xml and how to deploy your plug-in.
To find out more about the background of the Eclipse architecture, chapter 3 gives you what you need, covering Eclipse Infrastructure and helping with the understanding of plug-in dependencies, extension points and OSGi.
For standalone development, SWT (Standard Widget Toolkit) can be used as a replacement for Swing. This was how I started out in my journey to Eclipse plug-in development. The SWT Widgets chapter gives a detailed view into how SWT widgets and layout managers work. Knowledge of this area is also essential for plug-in development. Chapter 5 follows up on this, covering JFace Viewers, providing OO wrappers around the basic SWT widgets. If you're developing lists, tables or trees, this will be an essential chapter to read.
The first half of Chapter 6 is entirely devoted to the Eclipse Command Framework, which replaced the older Action framework. This chapter helps developers who are migrating to the new command framework by providing the same examples in the second half of the chapter with Actions. This is the best overview of Commands that I have read anywhere. Views and Editors and Perspectives are covered in the following two chapters with more detailed examples.
Chapter 11 discusses Dialogs in the first half of the chapter, with the second half focusing on Wizards. This is an interesting approach, allowing a comparison of the suitability of either of the technologies to your own use case.
Other useful chapters include a chapter on Builders, Markers and Natures – essential if you are planning to extend Eclipse to provide some sort of IDE functionality. The chapter on the Help system is the most complete view you will see on the different aspects to providing user assistance in Eclipse, with the Internationalization chapter helping you to make your code handle difference languages and locales.
Building and product branding is explained, along with p2 update site creation description, another new addition in Eclipse 3.4.
Without doubt, my favourite chapter in the book is the introduction to GEF (Graphical Editing Framework). This is a notoriously under-covered aspect of Eclipse, but one of the most useful technologies if you need to go beyond traditional form-based applications.
Each chapter includes a section on the IBM Ready for Rational Software (RFRS) certification which ensures the availability of high quality add-ons to Eclipse and the IBM Software Development Platform. The highlighted certification criteria and strategies are very useful if you are aiming to achieve this certification.
Free Book Offer! Enter our DZone competition to win a free copy of Eclipse Plug-ins by submitting a comment on a previous edition and why you liked it, or what it is that interests you most about this book. We will then randomly select a winner based on the entries received by 31 January, 2009.