Over the past week or so, I’ve been using this blog to capture my thoughts on my “What is Eclipse?” presentation. To recap, I start this conversation with an expectation that the listener is already familiar with Eclipse as a Java IDE (if they’re not then this is easy enough to cover). I then use the C/C++ Development Tools (CDT), PHP Development Tools (PDT) and other languages to motivate Eclipse as an IDE Platform. This discussion tends to overlap with the next slide that introduces Eclipse as a Tools Platform. Modularity is the underlying message with these two last slides. Eclipse is a modular architecture that can be arbitrarily extended to do so many wonderful things in a very first-class manner.
Then, I strip it down even further and discuss Eclipse as an Application Framework.
As I recall, it was around the Eclipse 2.1 timeframe that some forward thinking individuals realized that all that menu and window management stuff with stackable views and editors, native widgets, adapters, contributions, and such, combined with extreme modularity could be useful for building more than just tools. We started to see organizations building end-user applications on top of Eclipse. It was pretty painful in those early days, but with a lot of effort from the Eclipse Platform team, the world was introduced to the Eclipse Rich Client Platform (RCP) with Eclipse 3.0.
Eclipse RCP is more than a mere widget toolkit, it’s a comprehensive application framework that provides most of the plumbing that your application needs; it lets you focus on building components of real value for your users. Even greater power can be derived by combining RCP with Eclipse Persistence Services (EclipseLink), the Eclipse Communication Framework (ECF), Riena and more. The RCP, which underlies every Eclipse IDE, provide all the flexibility and scalability that you need to build both custom in-house applications along with applications for a broader audience.
The Eclipse Foundation’s “Resources” page contains numerous case-studies highlighting the many successes of Eclipse RCP.
EclipseLink, ECF, and Riena are hints of things to come. Eclipse is… Runtimes!.