Eclipse 4 (e4) is the next major release stream of the Eclipse RCP SDK. While Eclipse 3.x is great technology, the software landscape is changing, requiring core innovations within Eclipse. The Eclipse e4 team has taken on this challenge and reimplemented basic parts of the Eclipse Platform following new paradigms. The core goals of the project are to decrease complexity and to make Eclipse applications visually more appealing. Eclipse 4 introduces innovative programming techniques such as dependency injection, annotations and CSS styling. It reduces complexity by providing a consistent model of the workbench, based on EMF.
This course introduces the most important features of the new Eclipse Platform, highlights the major improvements over Eclipse 3.x and enables participants to develop applications based on Eclipse 4.
Course participants will iteratively create an Eclipse 4 application including a workbench, views, menu items and services. The course will also show how the application can be styled using Cascading Style Sheets (CSS). Finally, participants will learn how innovations from Eclipse 4 can be integrated into existing applications based on Eclipse 3.x.
This course is designed by Eclipse project leads and committers. We keep a small class format (maximum 8 participants) to ensure you will gain a broad understanding of Eclipse 4 and receive plenty of individual support from our experts.
Basic experience with Eclipse RCP development or the equivalent course is a prerequisite for this course.
Duration: 2 days
Dates and Registration
For dates of public trainings in Munich and exclusive onsite trainings please get in contact with us.
Course Goals, Audience and Prerequisites
Course Goals
- Understand the fundamental innovations in the Eclipse 4 platform
- Apply the concepts of Eclipse 4 to build a complete application
- Experience the advantages of Eclipse 4 compared to Eclipse 3.x
- Learn how and when to introduce Eclipse 4 in a running project
- Gain an overview of Eclipse 4 technologies and frameworks in the Eclipse Ecosystem
Target Audience
- Developers who wish to transfer their RCP development knowledge from Eclipse 3.x to Eclipse 4
- Architects who are planning to use Eclipse 4 technology in existing software projects
Prerequisites
- Knowledge of Java and object-oriented programming
- Basic knowledge of RCP development in Eclipse 3.x
- Experience using the Eclipse IDE is beneficial
Course Outline
Eclipse 4 Overview
- Motivation for a new platform
- Core innovations
- Hello World
The Application Model
- Overview EMF (optional)
- Eclipse 4 Tooling
- Modeling an application
- Linking the workbench model to implementations
- Programmatically modifying the workbench model
- Extending a model using fragments
Dependency Injection
- Overview
- The Eclipse context
- Manual injection
- Programming with Annotations
Services
- Overview
- Using existing services
- Declaring custom services
Commands and Handlers
- Introduction to commands, items and handlers
- Integrating with the selection service
- Pop-up menus
- Conditional enablement and visibility
- Key Bindings
Modular Application Models
- Contribute extensions to an application model
- Model Fragments
- Model Processors
Editors
- Contributing and opening an editor
- Implementing an editor
- Managing the dirty state of an editor
Additional Model Elements and Services
- Perspectives
- Placeholder
Additional topics
- Styling
- Event Bus
Outlook
- Using Eclipse 4 technologies in 3.x
- Migrating to Eclipse 4
- Additional technologies
More Info
Format
- Course duration: 2 days
- Course structure: instructor led with at least 50% hands-on labs and tutorials
- Learn better in a small group: maximum 6-8 participants per instructor
- Equipment: participants supply their own computer with an up-to-date installation of Eclipse
Languages
Classes in Germany are held in German. All other courses are held in English. Other languages are available on request.