8/14/2019 e4 web
1/29
AnywareTechnologies-A
llRightReserved
e4What will
the future ofEclipse be?
Photo:ColinPurrington
LicenceEPL
8/14/2019 e4 web
2/29
AnywareTechnologies-All
RightReserved
1.0
8/14/2019 e4 web
3/29
AnywareTechnologies-All
RightReserved
2.0
8/14/2019 e4 web
4/29
AnywareTechnologies-All
RightReserved
3.0
8/14/2019 e4 web
5/29
AnywareTechnologies-AllRightReserved
3.1
8/14/2019 e4 web
6/29
AnywareTechnologies-AllRightReserved
3.2
8/14/2019 e4 web
7/29
AnywareTechnologies-AllRightReserved
3.3
8/14/2019 e4 web
8/29
AnywareTechnologies-AllRightReserved
3.4!
8/14/2019 e4 web
9/29
AnywareTechnologies-AllRightReserved
Agenda
Eclipse, a successful story
2000 ... Eclipse birth
2008 ... Eclipse now
2010 ... Eclipse Odyssey?
The key technologies of e4
SWT
RAP
Dojo, Flex, Silverlight, ...Android?
The Application Model
backward compatibility?
DEMO!
Discussion
8/14/2019 e4 web
10/29
AnywareTechnologies-AllRightReserved
Eclipse, a successful story
8/14/2019 e4 web
11/29
AnywareTechnologies-AllRightReserved
Eclipse History (1)
1999
IBM (OTI) starts Eclipse asan internal project
2001
Eclipse 1.0
Open-Source donation(CPL) - www.eclipse.org
2002
Eclipse 2.0 2003
Eclipse 2.1
Photo: Alessandro Paiva
8/14/2019 e4 web
12/29
AnywareTechnologies-AllRightReserved
Eclipse History (2)
2004
Eclipse Foundation not-for-profit organization
Eclipse 3.0
OSGi adoption Rich Client Platform
2005-2007
Eclipse 3.1, 3.2, 3.3
Simultaneous releases
2008
Ganymede
24 projects
Photo: Alessandro Paiva
8/14/2019 e4 web
13/29
AnywareTechnologies-AllRightReserved
Eclipse 3.4: state of affairs
Many technologies are now the reference
OSGi, Equinox : component/plug-in model
RCP : rich client
EMF : modeling
A very active Open Source community
Eclipse Foundation
8/14/2019 e4 web
14/29
AnywareTechnologies-AllRightReserved
e4: WHY?
Entry fee is too high for
plug-in developers
potential contributors
APIs are
hard to find
(sometimes) not documented well
(sometimes) redundant
Bad separation of concerns
The Eclipse platform is too closed
8/14/2019 e4 web
15/29
AnywareTechnologies-Al
lRightReserved
The e4 Plan
What e4 needs to address:
new UI directions
bring modeling to the IDE
improve p2 integration
keep on leveraging andpromoting OSGi andEquinox
Eclipse 4.0 SDK... built one4!
Developers eat their owndog's food!
Photo:SanjaGjenero
8/14/2019 e4 web
16/29
AnywareTechnologies-Al
lRightReserved
The e4 Plan - UI
(More) separation of appearance from content
Scripting
Styling (CSS-like)
Declarative UI
Other (better?) look&feel
forget some IDE preconception
Web
8/14/2019 e4 web
17/29
AnywareTechnologies-Al
lRightReserved
The e4 Plan - Modeling
Expose a DOM of the Workbench
secret dream: implement a CSS-like presentation layer
Leverage the EMF infrastructure?
code generation (with minimal footprint)
notifications
serialization
...
8/14/2019 e4 web
18/29
AnywareTechnologies-Al
lRightReserved
The e4 Plan - p2
Replace this good old Update Manager
Two kinds ofrepositories
artifacts
metadata
Much better management of
dependencies
profiles
installation/removal
8/14/2019 e4 web
19/29
AnywareTechnologies-AllRightReserved
The e4 Plan - RT
Eclipse is often seen as tools, but is in fact a platform
One platform to rule them all!
Consistent programming
Common component model set of basic services
...many implementations
Equinox
ECF
eRCPRAP
Riena
etc.
8/14/2019 e4 web
20/29
AnywareTechnologies-AllRightReserved
The technologies of e4
8/14/2019 e4 web
21/29
AnywareTechnologies-AllRightReserved
RAP
Bring the Workbench to the Web
Server-side: Equinox
Client-side: qooxdoo
The RAP widget toolkit is based on SWT
8/14/2019 e4 web
22/29
AnywareTechnologies-AllRightReserved
RAP vs. RCP
RCP RAP
Plugin Model OSGi
SWT
JFace
Workbench Web Workbench
OSGi on the server
(inside a webapp)
Widget
Toolkit
WWW Widget
Toolkit (W4T)
Model View
Controller
JFace (adapted, as
standard JFace has
references to SWT)
UI
Framework
8/14/2019 e4 web
23/29
AnywareTechnologies-AllRightReserved
From SWT 3.x to SWT 4
SWT
The Eclipse graphical toolkit
Efficient, portable, native
Native code, Java interface
Supported by many platforms Desktop : Windows, Macintosh, Linux, Solaris
Embedded : Windows Mobile, Nokia phones, ...
Web : RAP
8/14/2019 e4 web
24/29
AnywareTechnologies-AllRightReserved
Future of SWT
Be more webish
Because there are more and more web applications
Choose one (many?) target platform
RAP 2 qooxdoo, Dojo, ...
Flex ActionScript
Silverlight
.Net
8/14/2019 e4 web
25/29
AnywareTechnologies-AllRightReserved
Rethink the Application Model
Think in terms ofservices
Which service do I need? and the UI should not be seen as a service, thus not part of the AM
more than Is this the A, B, or whatever plug-in that will
help me to do such or such thing? strongly described
automatically generated documentation
The Twenty Things basic essential services Eclipse must address
SelectionService, Adapters, Undo/Redo, Menus, ...
8/14/2019 e4 web
26/29
AnywareTechnologies-AllRightReserved
Ensure backward compatibility
Strong business need for backward compatibility
1000+ plug-ins in EPIC
BUT e4 is the chance to clean-up fuzzy APIs
Eclipse 3.x experience
compatibilityplug-in fragments
8/14/2019 e4 web
27/29
AnywareTechnologies-AllRightReserved
Timeline
May 22-23, 2008: e4 Summit in Ottawa
Project proposal to come
Developments already started
e4-incubatorin the Eclipse CVS
Try to sync-up with 3.x changes when possible
Release in 2010!
8/14/2019 e4 web
28/29
AnywareTechnologies-AllRightReserved
DEMO!
8/14/2019 e4 web
29/29
AnywareTechnologies-A
llRightReserved
Thank you!
Benjamin CabEclipse Expert
http://blog.benjamin-cabe.com
http://www.anyware-tech.com
mailto:[email protected]://www.anyware-tech.com/http://www.anyware-tech.com/mailto:[email protected]