Our Services » Courses, Training and Workshops » Extending Eclipse and RCP » Advanced Eclipse Plug-in Development

RC0605 - Advanced Eclipse Plug-in Development

Goal

To understand and use the advanced features of the Eclipse platform in plug-ins

Duration

3 days

Prerequisites

Content

  • The architecture of the Eclipse platform. This is a basic walk-through of all the central concepts of the Eclipse platform and how these fit together. This includes the following concepts: the OSGi framework, Eclipse plug-ins, features, products and fragments, extension points, and start-up sequence.
  • Extending the workbench. The Eclipse workbench can be extended in numerous ways. This lesson lists most common methods that can be used to extend the workbench.
  • Creating a view. This is a detailed listing of all the things that must be performed to fully implement a new view along with actions, menus, sorting, filtering, etc.
  • Creating an Editor. There are a little more that must be done to implement an editor compared to a new view. This lesson lists all these additional items. This includes a list of the exact differences between a view and an editor - when should each be used.
  • Debugging and Testing Editors. Special problems are seen when editors must be debugged and tested. This lesson focuses on some of the solutions and how to fully test editors with JUnit.
  • Creating a Language Editor. Editors that handle programming languages (in a wide understanding) face some special issues that must be solved. These include issues around effective parsing of the editor text and folding of text.
  • Interfacing to Eclipse Standard Views. Eclipse contains a large number of standard views can be extended to support new languages or data models. This lesson focus on the interface to the most common Eclipse views: Problems View, Outline View, Search View, and the Project Explorer.
  • Handling Concurrency and Resources. A very important part of the Eclipse base platform is the Resource framework. This lesson describes how resources can be manipulated in Eclipse and how concurrency problems are handed. This includes a detailed description of the use of progress monitors in the framework.
  • More on Language Editors. One of the hail marks of the Eclipse Java Development Platform is the support of quick fixes, context assistance and refactoring. This lesson describes how these and other similar features can be implemented in a language editor.
  • Models in Eclipse. The Eclipse platform has a number of modeling frameworks. This lesson describes these methods.
  • Interacting with other Eclipse products and tools. Eclipse has a large set of standard sub-systems and it can be very beneficial to interface with these in new features. This lesson describes some of the ways a new feature can interface with JDT, CDT, and Mylar.

Style

The course is a mixture of theory and practice and is divided into a number of lessons. Each lesson contains

  • A detailed theoretical walk-though of all the concepts and terms of the lesson.
  • A practical case where the gained knowledge from the subject is used.
  • A list of sources for additional information on the subject of the lesson.