Five Reasons To Be Excited About the Eclipse Ecosystem

DZone 's Guide to

Five Reasons To Be Excited About the Eclipse Ecosystem

· Java Zone ·
Free Resource
As a developer who depends on the Eclipse platform daily, there are a number of projects that I couldn't do without in the Eclipse eco-system. I'm not talking about plugins that I use to help me in the development process - I'll do a list of them some other time. Here I'm discussing the projects that exist that give me a huge kickstart into creating quality applications, and projects that are helping to determine the future of what Java applications will be capable of.

1) e4

When I think about the future of application development, I keep getting drawn back to the Eclipse e4 project. The goals of the project are to make it easier to write plugins and allow better control over the look of Eclipse based products. But the key is that it will provide a uniform platform across computing environments - real single-sourcing to allow you to deploy your application to any platform - whether that's embedded, web, desktop, server or the cloud. 

One of the best things about this project is that it's planned for a first major release in 2010. That gives people like you and me the chance to get in there, contribute to the project, and ensure that it goes in the direction that will suit the majority. 

2) Eclipse Communications Framework

Without a doubt, this is my favourite project in the ecosystem. I'm so impressed that I've even gotten involved in the project to help develop an Eclipse based Twitter client (TweetHub) that is built on the Twitter provider.

At it's core, ECF is a framework supporting the development of distrubuted Eclipse-based tools and applications. There are providers for most of the popular communication tools - such as XMPP (Google Talk), Yahoo, Skype and more. As a result of this, you can integrate your communications tools into your Eclipse IDE, or your RCP based application. 

Try out the Real Time Shared Editing support though, and you won't fail to be impressed. This feature allows full syncronisation between two Eclipse IDEs, editing the same source file and synchronising updates across the wire. Real pair programming, without having to give up your keyboard! 

ECF 3.0 will be released on the Galileo release train and will include an implementation of RFC 119 - Distributed OSGi.

3)  Rich Ajax Platform

While we wait for e4 to be complete, there's no reason that you can't create Eclipse based applications to run on your browser. The RAP project allows you to create AJAX-enabled web applications using the workbench extension points, JFace and a widget API based on SWT.

If you've been wondering what platform to use for your latest web app or mashup, maybe RAP will suit you? RAP 1.2 will be released on the Galileo release train.

4) Eclipse Modelling Project

When it comes to developing applications quickly, model-driven development is where it's at these days. The Eclipse community has a whole umbrella project for their modelling tools and APIs.  The project that most people will be familiar with is probably EMF - a modelling framework and code generation facility for building tools based on a data model. There's also GMF, allowing you to create graphical editors based on EMF and GEF. 

5)  Equinox

It's impossible to ignore Equinox in a rundown of Eclipse projects. At the core of every RCP based application, you've got Equinox - an implementation of the OSGi R4 core framework specification - helping you to run OSGi based systems. It can also be used as a standalone OSGi implementation. So you can run it on your server, as well as on your desktop. 


I believe that the projects I've listed here have a huge part to play in the future of Java application development. Of course there are many more projects I could add to this list. I'd be interested to hear your thoughts on the projects in the Eclipse community, and what ones you think are the most important.  Don't forget, these projects always welcome help whether it's contributing fixes, finding bugs or simply writing articles about them.


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}