Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright © IBM Corp., 2008. All rights reserved. From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP Benjamin Pasero.

Similar presentations


Presentation on theme: "Copyright © IBM Corp., 2008. All rights reserved. From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP Benjamin Pasero."— Presentation transcript:

1 Copyright © IBM Corp., 2008. All rights reserved. From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP Benjamin Pasero

2 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. What is RSSOwl?  A newsreader for newsfeeds  What do users expect from such an application?  Leightweight, Fast, Responsive  Little Footprint  Small Download Size  Clean User Interface  Add-Ons and integrated Update Manager  Is this even possible with Eclipse RCP?

3 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Brief overview of RSSOwl 1.x  started in summer 2003 with 700.000 downloads till today  SWT only and a small cup of JFace  No Viewers  No Ressource Management  Great to discover bugs in SWT due to uncommon usage  Always running on latest Integration Build of SWT  Single, monolithic JAR  Build & Deployment via ANT

4 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved.

5 RSSOwl 2.0 on RCP  started in summer 2005 with 70.000 downloads till today  Reasons  Catching up with features of other newsreaders was becoming hard  Take advantage of using Eclipse RCP  Design Decisions  Java 5  Real Database  Eclipse RCP  Open the application for others to contribute extensions

6 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Architecture and Extensibility of RSSOwl 2.0  Code is split up in a core and a ui bundle  in addition one bundle per library  db4o, Lucene, HTTPClient, mime4j  > 18 extension points  Support for new protocols (e.g. nntp, mail, ftp,…)  Support for new feed formats (any XML will do)  Support for new namespaces in existing feed formats (e.g. itunes)  Support for custom elements or attributes in existing feed formats

7 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved.

8 Benefits using Eclipse RCP over SWT-only  Equinox with support for bundles and extensibility  Support for updating Bundles  JFace Viewer & Ressource Management  Jobs API to perform background tasks and showing progress  Keybinding Support  UI Extensibility (Menus, Toolbar, Object Contributions, Views,…)  …

9 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Pain Points using RCP in RSSOwl 2.0 (1/2)  Overlay complex to make the UI not look like an IDE  Wishful thinking: simple CSS-Theming in Eclipse 4.0  Think about why there are so many themes for apps like Firefox  Can't fully hide IDE aspects in RCP  Monolithic org.eclipse.ui with lots of contributions  Most visible in preferences (Keybindings)  Size and Footprint concerns  Runtime > 12 MB  ~2700 classes loaded for simple Hello World

10 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Pain Points using RCP in RSSOwl 2.0 (2/2)  Annoying gap between RCP and SDK Integration  Overhead making a plug-in ready for being added into RCP or SDK  ICU (International Components for Unicode) dilemma  Adds 4 MB to the RCP runtime  Replacement exists, but requires to patch RCP feature  Summing up  RCP was created from the existing SDK and not vice-versa  Would it be possible to do it the other way round?

11 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Announcing RCP Essentials  Minimal RCP: Let's begin from scratch  Equinox  SWT & JFace  Essential Workbench  Can be plugged into the Minimal RCP  Simple default presentation without Multiple Document Interface  No default UI-Contributions (no Commands, etc.)  Avoid restrictions of Views and Editors

12 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Eclipse RCP vs RCP Essentials (1/2) SWT JFace Equinox Runtime ICUWorkbench Data Bind.Jobs UICore Eclipse RCP  Monolithic org.eclipse.rcp Feature

13 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Eclipse RCP vs RCP Essentials (2/2) SWT JFace Equinox Runtime ICUThemes Data Bind. Jobs UICore RCP Essentials Essential Workbench  Eclipse 4.0: Get rid of features and allow updates to any configuration Help Update Forms

14 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Conclusion & Pointers  Using RCP for your application  Great to use in most cases  Some pain points when used for non-enterprise / non-IDE applications  High Hopes for Eclipse 4.0  Think of RCP as the foundation for any application  Pointers  More info on RSSOwl 2.0: http://boreal.rssowl.org  General info on RSSOwl: http://www.rssowl.org

15 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Thank’s for your attention E-Mail: bpasero@rssowl.org

16 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Legal Notices (1/2)  Copyright © IBM Corp., 2008. All rights reserved. This presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.  IBM and the IBM logo are trademarks or registered trademarks of IBM Corporation, in the United States, other countries or both.  Java and all Java-based marks, among others, are trademarks or registered trademarks of Sun Microsystems in the United States, other countries or both.  OSGi is a trademark or registered trademark of the OSGi Alliance in the United States and other countries.  Eclipse and the Eclipse logo are trademarks of Eclipse Foundation, Inc.  Other company, product and service names may be trademarks or service marks of others.

17 From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP | Copyright © IBM Corp., 2008. All rights reserved. Legal Notices (2/2)  THE INFORMATION DISCUSSED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY. WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION, IT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, AND IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, SUCH INFORMATION. ANY INFORMATION CONCERNING IBM'S PRODUCT PLANS OR STRATEGY IS SUBJECT TO CHANGE BY IBM WITHOUT NOTICE.


Download ppt "Copyright © IBM Corp., 2008. All rights reserved. From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP Benjamin Pasero."

Similar presentations


Ads by Google