dagblog.
← Archive

Eclipse E4 — The best rich client platform


I’d had the Eclipse E4 paper sitting in my “drawer” for a long time. It describes the direction of the next generation of Eclipse.

You often hear that Eclipse, as a Java IDE, isn’t up to the standard of IntelliJ IDEA. You can agree or disagree, but it’s important to keep these facts in mind. Eclipse was designed primarily as a platform for building tools and applications, rather than as a Java IDE.

If you expect version 4 to make a big leap in developer tools, you’ll probably be disappointed. There will of course be some smaller improvements, such as support for a more complex project layout, but don’t expect a revolution. I personally think that’s good, because the Eclipse developers can focus on what makes Eclipse what it is, the platform itself. Eclipse may not be the best Java IDE, but it is unquestionably the best platform for building tools and applications.

Besides an improved programming model that should let plug-ins work together better, I was interested in more substantial changes to the UI itself. The first big change is the ability to describe the UI (SWT) declaratively using XML or an EMF model. Application code will no longer contain the UI definition, which brings several advantages.

  • You’ll be able to manipulate the UI model at runtime, much as we use JavaScript to change the DOM of HTML pages.
  • You’ll be able to style the UI. E4 offers extended CSS for this, with better selectors.
  • You’ll be able to render the UI in different ways.

I’d like to linger briefly on the last point. Eclipse E4 already includes a renderer for SWT components in Adobe Flex. That opens the way into the heart of the web browser. Given the power of this framework for building rich internet applications and Eclipse’s programming model, it looks like the most promising combination for thin clients, period. I can’t think of many technologies that could compete, even from the .NET world.

Medium version

Related articles

Related CZ Podcast episodes