Eclipse 3.3 for RCP-Development – Quo vadis?
9. July 2007
Because I have already read many reviews that dealt with Eclipse 3.3 as a tool or IDE, I want to take up the the aspects of RCP Development with Eclipse 3.3. It is to notice that I am using Eclipse 3.3 since the M5 Release because of the Eclipse UI Form enhancements.
Essential Improvements
At RCP Development the focus is typically not directed to IDE functionalities like code-browsing (JDT), refactoring (LTK) or task-management (Mylyn). Therefore the enhancements located in the Platform API were much more interesting. Thus the enhancements and improvements in JFace (EditingSupport, ColumnLabelProvider, custom tooltips, Databindinding, etc), SWT (DateTime Widget, Mozilla Support, etc) and further features like the custom splash-handler, enhancements in the help-system and the Eclipse Forms (SharedHeader, Status-Messages, Look & Fell…) are relevant.
RCP Tool: PDE
The extensions of the PDE Tools facilitate primarily the eliminitation of configuration errors. And they provide a wide range of quick assists with which you would have saved much time in former Eclipse-versions. The extension of the MANIFEST.MF- and plguin.xml-Editor is especially noteworthy. The Bundling of a JRE has also been taken over by the PDE; there is no need for a manual bundling after a RCP Build.
Eclipse projects and their relevance for RCP-projects
Notable is also the grown relevance of the other Eclipse Projects, such projects that are not directly associated with the programming of software. First and foremost is to mention the Eclipse Modeling Framework (EMF) what should get more attention at devolping RCPs. But also the Business Intelligence Reporting Tool (BIRT) is suitable for RCP-integration and comes with significant enhancements (improved chart-properties, many new output-formats, etc). A further indicator for the relevance of these projects is the rising number of requests for gearing of these projects. In the bugzilla you can often read something like ‘provide support for project x in project y’.
Nevertheless, the learning curve for the integration of Eclipse projects into his RCP is still very flat initially. Support in the form of documentation, examples or code-snippets is still in early stages and code-browsing through the already very complex frameworks is nearly impossible or the benefits don’t justify the effort. At RCP-“nearer” API the documentation and support is very good. It seems to me, that the initial learning of RCP-technologies is today much easier than two and a half years ago.
There is still much to do
One problem still remains. Despite the excellent support for the development of IDE-related plugins the support by the framework reaches its limits very quickly for Software with non-technical context. Especially the missing of an ACL-Framework is a bit painful. In addition the “wild contribution” of other plugins is for typical IDE plugins an outstanding advantage (best example: Mylyn and the Package Explorer), but for rather restrictive RCPs it can be a nightmare sometimes. Just last week I tried to integrate the (very mighty) XML Editor from the WST-project into my very simple RCP. After that I had to define org.eclipse.ui.activities Extensions that get me rid of the Debugging-Perspective and all its views. A strict breakup and the possibility of enhanced restriction would be a great benefit for all RCP-developers (already in progress).
Conclusion
All in all the Eclipse 3.3 is a wonderful framework for the development of smart clients. I am pretty sure, that in the future the development of this framework will be continued with the present degree of innovation.
Finally the community should be noted, that has an essential part in the success of the Eclipse as Framework/IDE/whatever. As far as I know there is no other community that is so multi-faceted.


Thanks for the kind words about PDE. If you have any ideas on how to improve PDE, we appreciate bug reports
Comment by Chris Aniszczyk — 9. July 2007 @ 16:25
I can only second you that the real missing part for RCP is the ACL-Framework. I’ve never understood why not all actions, commands, views, … could ask at central place whether they are active or not. I really think we need to address. I’m uncertain how to start with this, are we too late for 3.4? Maybe this all has to wait for a major version change (4.0)?
Maybe you are also interested in the following article i proposed:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=195163
Comment by Tom Schindl — 9. July 2007 @ 18:52
You are right.
There is still much to do to improve RCP-developing.
Wouldn’t it be nice to integrate Mylyn in RCPs as an user task manager just by providing the Mylyn plugins ?
What I need most is a good printing API supporting typesetting.
Comment by Sebastian Fuchs — 10. July 2007 @ 10:09
I’m evaluating Eclipse/RCP for reimplementing a decision modeling tool… and I agree that the potential for Mylyn in RCPs is very attractive — have to read more about Structure and UI Bridges for integrating — this sounds promising.
Comment by Andy Sheldon — 26. July 2007 @ 19:31
What`s about visual editor and eclipse 3.3?
Comment by Olga — 16. August 2007 @ 16:26
I’m evaluating Eclipse/RCP for reimplementing a decision modeling tool… and I agree that the potential for Mylyn in RCPs is very attractive
Comment by Urs — 4. December 2007 @ 23:33