SlideShare a Scribd company logo
Cool stuff in Eclipse 4 for
                developers.



Eclipse DemoCamp Grenoble 2012
Mickael Istria
CC-BY 3.0
(Very easy) CSS in RCP app




           +
           =
Modeled Workbench and Renderer
Services
New API Grain:




                                               o.e.eclipse.e4.core.services.log.Lo
o.e.core.databinding.observable.Realm            gger
o.e.core.runtime.dynamichelpers.IExtensionTr
    acker                                      o.e.e4.core.services.translation.Tr
o.e.core.runtime.IExtensionRegistry              anslationService
o.e.core.runtime.Platform                      o.e.e4.ui.css.swt.theme.IThemeEn
o.e.e4.core.commands.ECommandService             gine
o.e.e4.core.commands.EHandlerService           o.e.e4.ui.services.IStylingEngine
o.e.e4.core.services.adapter.Adapter
                                               o.e.e4.ui.workbench.IPresentation
o.e.e4.core.services.events.IEventBroker
                                                 Engine
                                               o.e.e4.ui.workbench.IResourceUtili
                                                 ties
Dependency Injection (DI)
Don't seek an object: @Inject it!



                          Service




Don't override/implement classes, use POJO with Annotations
Event Broker
http://wiki.eclipse.org/Eclipse4/RCP/Event_Model
Compatibility Layer

              Necessary bundles to get
                compatibility to work:
              org.eclipse.e4.ui.workbench.addo
                ns.swt
              org.eclipse.equinox.ds
              org.eclipse.equinox.event
              org.eclipse.equinox.util
              org.eclipse.platform
              org.eclipse.ui.forms
              org.eclipse.ui.intro

More Related Content

What's hot (11)

PDF
Angular is one fire(base)! - Shmuela Jacobs
Codemotion Tel Aviv
 
PPT
RightScale Minneapolis Lightning Talk
Intel Corporation
 
PDF
Kubernetes and the 12 factor cloud apps
Ana-Maria Mihalceanu
 
PDF
Massimo Bonanni - Workflow as code with Azure Durable Functions - Codemotion ...
Codemotion
 
PPT
RightScale CloudCamp Austin Slides
Intel Corporation
 
PDF
Martin Anderson - threads v actors
bloodredsun
 
PPT
C# Async on iOS and Android - Craig Dunn, Developer Evangelist at Xamarin
Xamarin
 
PDF
Quadcept v10.1.0 Released
Quadcept
 
PDF
Kubernetes and the 12 factor cloud apps
Ana-Maria Mihalceanu
 
PDF
Angular version 10 is here check out the new features, notable changes, depr...
Katy Slemon
 
KEY
Boulder StaleFish Presentation
Justin Smestad
 
Angular is one fire(base)! - Shmuela Jacobs
Codemotion Tel Aviv
 
RightScale Minneapolis Lightning Talk
Intel Corporation
 
Kubernetes and the 12 factor cloud apps
Ana-Maria Mihalceanu
 
Massimo Bonanni - Workflow as code with Azure Durable Functions - Codemotion ...
Codemotion
 
RightScale CloudCamp Austin Slides
Intel Corporation
 
Martin Anderson - threads v actors
bloodredsun
 
C# Async on iOS and Android - Craig Dunn, Developer Evangelist at Xamarin
Xamarin
 
Quadcept v10.1.0 Released
Quadcept
 
Kubernetes and the 12 factor cloud apps
Ana-Maria Mihalceanu
 
Angular version 10 is here check out the new features, notable changes, depr...
Katy Slemon
 
Boulder StaleFish Presentation
Justin Smestad
 

Viewers also liked (20)

ODP
Making Eclipse IDE better at handling real-life projects @EclipseCon NA 2015
Mickael Istria
 
PDF
Watchkit - Programmieren für die Apple Watch
dirkkoller
 
PPT
Vision 2020
guesta00cdc
 
PDF
iOS apps in Swift
Nuno Dias
 
PDF
OSGi Semantic Versioning with Baselining in enRoute - P Kriens
mfrancis
 
PDF
Kitura swift IBM
Vidyasagar Machupalli
 
ODP
Apache Sling Server Seitiges OSGi
Felix Meschberger
 
PDF
W-JAX 07 - AOP im Einsatz mit OSGi und RCP
Heiko Seeberger
 
PDF
iks auf der Jax 2010: Provisioning unter OSGi für Test und Betrieb
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
PDF
Developing Swift - Moving towards the future
Pablo Villar
 
PDF
Realisierung von Service-Varianten und zustandsbehafteten Services aus Basis ...
Kai Hackbarth
 
PDF
Google, Apple, Facebook - Der Kampf der Internetgiganten (pdf)
Christoph Kappes
 
PPT
Developing iOS apps with Swift
New Generation Applications
 
PDF
Erweiterbare Webanwendungen mit OSGi
Jan Ehrhardt
 
PDF
OSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGi
Patrick Baumgartner
 
PDF
EclipseCon Europe 2016, S. Cela, M.Istria: Eclipse Generic and Extensible Edi...
Mickael Istria
 
PDF
Apple Watch – Zusammenfassung Takondi Innovations Apéro 7.5.2015
Matthias Kaenzig
 
PPTX
Exploring the Future of Eclipse Modeling: Web and Semantic Collaboration
Istvan Rath
 
PDF
Swift Programming Language
Giuseppe Arici
 
Making Eclipse IDE better at handling real-life projects @EclipseCon NA 2015
Mickael Istria
 
Watchkit - Programmieren für die Apple Watch
dirkkoller
 
Vision 2020
guesta00cdc
 
iOS apps in Swift
Nuno Dias
 
OSGi Semantic Versioning with Baselining in enRoute - P Kriens
mfrancis
 
Kitura swift IBM
Vidyasagar Machupalli
 
Apache Sling Server Seitiges OSGi
Felix Meschberger
 
W-JAX 07 - AOP im Einsatz mit OSGi und RCP
Heiko Seeberger
 
iks auf der Jax 2010: Provisioning unter OSGi für Test und Betrieb
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Developing Swift - Moving towards the future
Pablo Villar
 
Realisierung von Service-Varianten und zustandsbehafteten Services aus Basis ...
Kai Hackbarth
 
Google, Apple, Facebook - Der Kampf der Internetgiganten (pdf)
Christoph Kappes
 
Developing iOS apps with Swift
New Generation Applications
 
Erweiterbare Webanwendungen mit OSGi
Jan Ehrhardt
 
OSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGi
Patrick Baumgartner
 
EclipseCon Europe 2016, S. Cela, M.Istria: Eclipse Generic and Extensible Edi...
Mickael Istria
 
Apple Watch – Zusammenfassung Takondi Innovations Apéro 7.5.2015
Matthias Kaenzig
 
Exploring the Future of Eclipse Modeling: Web and Semantic Collaboration
Istvan Rath
 
Swift Programming Language
Giuseppe Arici
 
Ad

Similar to Cool stuff in E4 for developers (20)

PPTX
Eclipse 40 and Eclipse e4
Lars Vogel
 
PPTX
Eclipse e4 Overview
Lars Vogel
 
PPT
Eclipse 2011 Hot Topics
Lars Vogel
 
PPTX
Eclipse e4 on Java Forum Stuttgart 2010
Lars Vogel
 
PDF
"Applied Enterprise Metaprogramming in JavaScript", Vladyslav Dukhin
Fwdays
 
PDF
Learn about Eclipse e4 from Lars Vogel at SF-JUG
Marakana Inc.
 
PPTX
Eclipse Overview
Lars Vogel
 
PPTX
Eclipse RCP 4
Fredrik Attebrant
 
PDF
Eclipse 40 - Eclipse Summit Europe 2010
Lars Vogel
 
PDF
Eclipse e4
Chris Aniszczyk
 
ODP
Simplifying RCP Update and Install
susanfmccourt
 
PPTX
Experiences from porting a commercial RCP application to Eclipse 4.x
Fredrik Attebrant
 
PPT
Understanding Framework Architecture using Eclipse
anshunjain
 
PDF
Eclipse e4 - Google Eclipse Day
Lars Vogel
 
ODP
Spring framework
srmelody
 
PPT
javagruppen.dk - e4, the next generation Eclipse platform
Tonny Madsen
 
PDF
Devfest 2023 - Service Weaver Introduction - Taipei.pdf
KAI CHU CHUNG
 
PDF
26 top angular 8 interview questions to know in 2020 [www.full stack.cafe]
Alex Ershov
 
PPTX
Spring Basics
ThirupathiReddy Vajjala
 
PDF
Cannibalising The Google App Engine
catherinewall
 
Eclipse 40 and Eclipse e4
Lars Vogel
 
Eclipse e4 Overview
Lars Vogel
 
Eclipse 2011 Hot Topics
Lars Vogel
 
Eclipse e4 on Java Forum Stuttgart 2010
Lars Vogel
 
"Applied Enterprise Metaprogramming in JavaScript", Vladyslav Dukhin
Fwdays
 
Learn about Eclipse e4 from Lars Vogel at SF-JUG
Marakana Inc.
 
Eclipse Overview
Lars Vogel
 
Eclipse RCP 4
Fredrik Attebrant
 
Eclipse 40 - Eclipse Summit Europe 2010
Lars Vogel
 
Eclipse e4
Chris Aniszczyk
 
Simplifying RCP Update and Install
susanfmccourt
 
Experiences from porting a commercial RCP application to Eclipse 4.x
Fredrik Attebrant
 
Understanding Framework Architecture using Eclipse
anshunjain
 
Eclipse e4 - Google Eclipse Day
Lars Vogel
 
Spring framework
srmelody
 
javagruppen.dk - e4, the next generation Eclipse platform
Tonny Madsen
 
Devfest 2023 - Service Weaver Introduction - Taipei.pdf
KAI CHU CHUNG
 
26 top angular 8 interview questions to know in 2020 [www.full stack.cafe]
Alex Ershov
 
Cannibalising The Google App Engine
catherinewall
 
Ad

More from Mickael Istria (15)

ODP
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Mickael Istria
 
ODP
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Mickael Istria
 
ODP
IDE as a Front-end and Fast time-to-market language support in Eclipse IDE re...
Mickael Istria
 
ODP
Parallel builds in Eclipse IDE workspace
Mickael Istria
 
ODP
[EclipseCon France 2017] Language Server Protocol in action
Mickael Istria
 
ODP
[EclipseCon France 2017] Eclipse Platform Generic Editor
Mickael Istria
 
ODP
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
Mickael Istria
 
ODP
Contribute to Eclipse projects
Mickael Istria
 
PDF
A journey with Target Platforms
Mickael Istria
 
PDF
Fight your technical debt with Jenkins, Jacoco and Sonar
Mickael Istria
 
ODP
What's up GMF Tooling?
Mickael Istria
 
ODP
Iterative and-agile-codegen
Mickael Istria
 
ODP
Modeling With Eclipse @SoftShake 2011
Mickael Istria
 
ODP
Whats new in Eclipse Indigo ? (@DemoCamp Grenoble 2011)
Mickael Istria
 
ODP
Sur la route de l'agilité @Mix-it Lyon 2011
Mickael Istria
 
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Mickael Istria
 
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Mickael Istria
 
IDE as a Front-end and Fast time-to-market language support in Eclipse IDE re...
Mickael Istria
 
Parallel builds in Eclipse IDE workspace
Mickael Istria
 
[EclipseCon France 2017] Language Server Protocol in action
Mickael Istria
 
[EclipseCon France 2017] Eclipse Platform Generic Editor
Mickael Istria
 
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
Mickael Istria
 
Contribute to Eclipse projects
Mickael Istria
 
A journey with Target Platforms
Mickael Istria
 
Fight your technical debt with Jenkins, Jacoco and Sonar
Mickael Istria
 
What's up GMF Tooling?
Mickael Istria
 
Iterative and-agile-codegen
Mickael Istria
 
Modeling With Eclipse @SoftShake 2011
Mickael Istria
 
Whats new in Eclipse Indigo ? (@DemoCamp Grenoble 2011)
Mickael Istria
 
Sur la route de l'agilité @Mix-it Lyon 2011
Mickael Istria
 

Recently uploaded (20)

PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 

Cool stuff in E4 for developers

  • 1. Cool stuff in Eclipse 4 for developers. Eclipse DemoCamp Grenoble 2012 Mickael Istria CC-BY 3.0
  • 2. (Very easy) CSS in RCP app + =
  • 4. Services New API Grain: o.e.eclipse.e4.core.services.log.Lo o.e.core.databinding.observable.Realm gger o.e.core.runtime.dynamichelpers.IExtensionTr acker o.e.e4.core.services.translation.Tr o.e.core.runtime.IExtensionRegistry anslationService o.e.core.runtime.Platform o.e.e4.ui.css.swt.theme.IThemeEn o.e.e4.core.commands.ECommandService gine o.e.e4.core.commands.EHandlerService o.e.e4.ui.services.IStylingEngine o.e.e4.core.services.adapter.Adapter o.e.e4.ui.workbench.IPresentation o.e.e4.core.services.events.IEventBroker Engine o.e.e4.ui.workbench.IResourceUtili ties
  • 5. Dependency Injection (DI) Don't seek an object: @Inject it! Service Don't override/implement classes, use POJO with Annotations
  • 7. Compatibility Layer Necessary bundles to get compatibility to work: org.eclipse.e4.ui.workbench.addo ns.swt org.eclipse.equinox.ds org.eclipse.equinox.event org.eclipse.equinox.util org.eclipse.platform org.eclipse.ui.forms org.eclipse.ui.intro

Editor's Notes

  • #2: * Get e4 tools for E4 site
  • #3: * Just a new property in the org.eclipse.core.runtime.products/product extension * Works on the whole app * Can be overriden through code locally * Separate design from dev. * Can be programatically & dynamically (re)loaded to support themes/high contrast...
  • #4: * An (extensible) model for the application + extensible renderers * A single entry point for workbench definition * Possiblity to change model at runtime * Possiblity to have several renderers (SWT, JavaFx) * New possibities thanks to EMF (synchronisation, versioning...) * Extension points still working
  • #6: * Less API (super-classes), in favor of annotations * There in a always a context : when invoking a method or instantiating an object * More component-based → less singletons, ability to mock...