PR0034 - 2010-11-30
Redistribution and other use of this material requires written permission from The RCP Company.
Eclipse e4 – The Status and the Future
Presentation by Tonny Madsen at Eclipse Demo Camp in Copenhagen1. December 2010
PR0034 - 2010-11-30
2
The Eclipse Story
1994: IBM develops VisualAge for Smalltalk – programmed in Smalltalk 1995: Java is released to a select group 1996: IBM develops VisualAge for Java – still programmed in Smalltalk November 1998: OTI (Object Technology International – part of IBM) is commissioned
to develop new development platform for Java First known as VisualAge Micro Edition (VAME) and later Eclipse
7. November 2001: Eclipse 2.0 made Open Source 25. June 2004: Eclipse 3.0 released introducing Eclipse RCP
Framework make-over introducing OSGi
2009: Eclipse 3.5 released – known as Galileo
27. June 2010: Eclipse 3.6 will be released Also known as Helios
End of July, 2010: Eclipse SDK 4.0 Early Adopter Release First release of e4 technology
June 2011: Eclipse 3.7 will be released June 2011: Eclipse 4.1 will be released
June 2012: Eclipse 4.x will be released
PR0034 - 2010-11-30
3
The e4 History
5. Marts 2008: Later night at EclipseCon ’08 SWT Browser Edition Eclipse IDE in a Browser Separation of WB Model and View Scripting
20. May 2008: Mail to e4-dev „A radical approach to explore new paths for e4“ Platform designed from Scratch Based upon an EMF-Application-Model No statics, no singletons, usage of Dependency Injection Based on OSGi-Services
20. November 2009: 1.0M2 released
PR0034 - 2010-11-30
4
SWT Browser Edition
Technology worked really well
But not applicable without rewriting Java
We’d rather rewrite with HTML5, JavaScript, CSS
PR0034 - 2010-11-30
5
Why e4
Simplify the Eclipse programming model This will reduce development and maintenance costs and enable a larger
developer community to leverage the platform in their own Eclipse-based applications
Enable the platform for use on emerging web-based runtime technologies This will ensure the platform remains a compelling and viable application
framework in a rapidly changing web technology landscape, and it will allow e4-based applications to leverage web technologies, while remaining insulated from specific technology choices that may quickly become obsolete
Broaden participation in development of the platform This reduces the risks associated with building on a platform largely funded
from a single source. Having a large and diverse group of commercial backers, will ensure the platform remains vibrant and viable over the long term
PR0034 - 2010-11-30
6
Main Technical Differences between Eclipse 3.x and e4
Application Model in EMF Complete live model for the application – changes are reflected
immediately in the application
Rendering the Application Maps the model to the UI Allows for a completely new look and feel without touching the internals Allows support for different widget sets – even Adobe Flash or Microsoft
Silverlight
Context Contains the context/environment for all contributions Brokers interaction with the framework: service lookup, service registration
Dependency Injection Allows for POJOs for all contributions
PR0034 - 2010-11-30
7
Basic e4 Workbench Model
Application
Command
Handler Binding
Window
Part
Menu
Part Description
Toolbar
PR0034 - 2010-11-30
8
Component Overview
Dependency Injection
Eclipse Context
Declarative Styling
Core Services
Workbench
Rendering Engine
Modeled Application
XWT
Open Social Gadgets
PR0034 - 2010-11-30
9
Application Model
PR0034 - 2010-11-30
10
Code for Parts
The code that provides the “parts” of the application is ordinary POJO No special inheritance – e.g. IViewPart or IWizardPage Services provided via Dependency Injection
public class Preview {public Preview(Composite parent, Realm workspace) {
// Create UI ...}
@Inpublic void setSelection(final IFile input) {
// React on Selection Changes}
}
PR0034 - 2010-11-30
11
Open Social Gadgets
What are OpenSocialGadgets Gadgets are web-based software components based on HTML, CSS, and
JavaScript. Open Eclipse for a new set of devlopers Examples
Remember the Milk http://www.rememberthemilk.com Twitter Gadget …
PR0034 - 2010-11-30
12
If You Want to Know More about e4
The Project: http://www.eclipse.org/e4/
Downloading e4: http://download.eclipse.org/e4/downloads/
Downloading Eclipse 4.1M3 http://download.eclipse.org/e4/sdk/drops/S-4.1M3-201010291118/index.php
The Wiki: http://wiki.eclipse.org/E4
The training: Not yet, but coming after the Summer
Tutorials on e4: http://www.vogella.de/articles/EclipseE4/article.html
A “create an application” tutorial from Lars Vogel
Top Related