NEWS

 

 




| Printer Friendly | Post Reply
Eclipse Rich Client Platform: An Important Strategy for the Eclipse Foundation
While the Eclipse platform is designed to serve as an open tools platform, it is architected so that its components can be used to build just about any client application. The minimal set of plug-ins needed to build a rich client application is collectively known as the Rich Client Platform.

Applications other than IDEs can be built using a subset of the platform. These rich applications are still based on a dynamic plug-in model, and the UI is built using the same toolkits and extension points. The layout and function of the workbench is under the control of the plug-in developer in this case.

“When we say that the Rich Client Platform is the minimal set of plug-ins needed to build a platform application with a UI, we mean that your application need only require two plug-ins, org.eclipse.ui and org.eclipse.core.runtime, and their prerequisites. However, rich client applications are free to use any API deemed necessary for their feature set, and can require any plug-ins above the bare minimum. Examples include the Help UI, and the Update Manager,” officials at the Eclipse Foundation say.

An RCP is usually made of the following components:
  • A core
  • A standard bundling framework
  • A portable widget toolkit
  • File buffers, text handling, text editors
  • A workbench (views, editors, perspectives, wizards)

Essentially, an RCP concept brings a framework to the world of Java desktop applications, says Stephen Lum. An RCP provides a skeleton/shell of an application, along with a module-based API that enables you to build your own application. The RCP does all the plumbing, such as creating a good design for adding menus, toolbars, different views, etc. Lum believes that the Eclipse RCP is also ideally suited to leverage Spring, a framework touted by Eclipse’s rival Sun Microsystems.

Todd Williams has justified the use of Eclipse RCP. According to him, a much better approach than rolling your own application framework would be to find one that could fulfill the design requirements while simplifying and accelerating project development. He has created a wish-list for such a framework and finds that Eclipse RCP fulfills almost all conditions. The list includes:
  • Implements a clear, consistent, and cohesive architecture
  • Supports development and execution on all the major desktop platforms (Windows, Mac OS X, Linux, QNX Photon, Pocket PC, HP-UX, AIX, Solaris)
  • A snappy UI response that maintains the platform's native look-and-feel
  • Provides a large variety of widgets, both standard (that is, button and checkbox) and extended (that is, toolbar, tree view, and progress meter)
  • Provides extensive text processing that includes editors, position/change management, rule-based styling, content completion, formatting, searching, and hover help
  • Supports using platform-specific features (that is, ActiveX) and legacy software, if desired
  • Enables branding the application
  • Contains an integrated help system
  • Manages user configuration and preferences
  • Supports remote discovery and installation of application updates
  • Created and backed by respected software companies experienced in creating object oriented frameworks
  • Supports internationalization and national language translation
  • Designed for flexibility with natural features for adding new functionality
  • "Pay" only for what you need—base frameworks can be easily reduced as well as extended to tailor capabilities to precise requirements

Ian Skerrett, director of Marketing at the Eclipse Foundation, feels it is important to be able to describe when someone should consider using Eclipse RCP, instead of alternative technologies. “In the space of platforms for rich user applications, there seems to be a number of potential solutions, including Eclipse RCP, AJAX, MS .NET and Flash. At the high level, I think there are a couple of decision points that lead you to a different technology alternative,” he says. Ian’s decision points include:
  • Organization Culture: Is your organization considered a Microsoft or Java shop? Are most of the programmers trained on .NET or in Java? Do you have a strategic direction to develop all applications on Java or .NET. An organization that is 100% Microsoft probably won't/shouldn't consider Eclipse RCP. If it is 100% Java, then Eclipse RCP would have a lot to offer.
  • Type of End User: The end user could be a casual one who uses the application occasionally or a power user who ‘lives’ in the application. Also integration with other applications on the desktop is often important. Here, Eclipse RCP will be a big win.
  • Type of Application: There are different types of applications that are better suited for Ajax, Flash or RCP. At a very simplistic level, there are three types of applications: content delivery, i.e. portals, dashboards, where presentation is very important, collaboration/workflow applications, where context and tasks switching is important and transactional applications. For the content delivery, Ajax and Flash seem to be better suited for presentation and ease of content delivery. However, when it comes to sophisticated workflow or collaboration, the ability to work offline and have persistent data is pretty important. Here RCP is better suited.

In the end, however, seamless integration and faster, more efficient development is what is desired by developers and ISVs. Eclipse RCP is on the right path to reach the pinnacle—not by being the leader, but by being the constant facilitator.

Resources & References
 


Yatego Shopping with more than 4000 Shops and with over 1.8 Mio Products. Branchenbuch and over 500.000 Bücher. Inspiration with Themeworld and Technic. A mobilephone- and Handy Shop with Nokia Handy, Motorola Handy and Sony Handy. With our Bestseller easily find Schuhe, Jeans, Kinderschuhe or a Digitalkamera, perhaps a Canon Digitalkamera. More Bestseller: Modellbahn, Diddl and Poker. Find Schmuck or Silberschmuck as easy as an Apple Ipod, Weber Grill or an Akkuschrauber.


  About Us | Advertise | Contact | Feedback | Publisher Copyright © 2007 Software & Support Media.
Any Questions?   Imprint | Privacy Policy