Eclipse Zone is brought to you in partnership with:

I've been a zone leader with DZone since 2008, and I'm crazy about community. Every day I get to work with the best that JavaScript, HTML5, Android and iOS has to offer, creating apps that truly make at difference, as principal front-end architect at Avego. James is a DZone Zone Leader and has posted 639 posts at DZone. You can read more from them at their website. View Full User Profile

Five Reasons To Be Excited About the Eclipse Ecosystem

05.15.2009
| 12513 views |
  • submit to reddit
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.

Comments

Piero Sartini replied on Sat, 2009/05/16 - 11:28am

Sorry, but I can't really share your excitement about any of these projects. Maybe that is because I don't like the SWT. The only project from the ecosystem I can't live without is EclipseLink... and I couldn't understand why Oracle didn't use Apache for opensourcing Toplink.

My opinion is that large parts of the Eclipse ecosystem are isolated because of the SWT. Many may not agree, but I think it was a bad move. It will always lag behind in the future... just take a look at JavaFX where Swing is well integrated.

James Sugrue replied on Sun, 2009/05/17 - 7:29am in response to: Piero Sartini

I can see what you mean Piero, but take a look at e4 and you'll see how it really is streets ahead of what JavaFX or Swing can provide.

EclipseLink  is a great project too. I'm not 100% sure on Oracle's reason for using Eclipse rather than Apache. Maybe the licence was more agreeable?

 

vlad varnica replied on Sun, 2009/05/17 - 10:16am

How can you compare the old Swing with the superbe SWT ?

Eclipse is today a real success on technological point of view. If you have time then you can do incredible things. The only problem I see is the learning curve of all these technologies which is too long and complex.

Andrew McVeigh replied on Mon, 2009/05/18 - 8:25am in response to: vlad varnica

 How can you compare the old Swing with the superbe SWT ?

 

they are comparable because they do almost identical things (albeit in different ways).

i myself prefer swing, and have become really quite good at it.  it's a flawed model for sure, but Swing + Java2D are capable of creating amazing interfaces.  i don't really like the SWT model myself, too much manual resource deallocation.

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.