The Eclipse Rich Client Platform (RCP)

The Eclipse Rich Client Platform (RCP)

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation The Eclipse Rich Client Platform (RCP) Chris Laffra IBM Ottawa Labs http://eclipsefaq.org/chris Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 1 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Roadmap Introduction Rich Client Programming The Eclipse RCP Project ¾Examples of RCP applications ¾All about plug-ins ¾Building your own Eclipse RCP application Conclusions Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 2 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Source of Materials Material sources: ¾ RCP tutorials at eclipse.org ¾ RCP samples from eclipse.org ¾ Feedback from Eclipse committers ¾ The Official Eclipse 3.0 FAQs Æ Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 3 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Format Each slide is one question with an answer We will introduce ¾ Some background; what is a Rich Client? ¾ The Eclipse project and RCP ¾ Show lots of sample code and demos After this presentation, you should be able to develop your own Eclipse RCP application. Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 4 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation What Is a Rich Client? Google dictionary: A computer program that can download files for manipulation, run applications, or request application- based services from a file server. Need some form of ‘installation’. Not a Thin Client (like a Web site). A ‘client’ with rich UI and interaction Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 5 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Rich Client Examples Java Applets in a browser JavaScript applications (e.g., Bindows) J2ME MIDP Midlets on a phone/PDA Macromedia Flash MX Microsoft Foundation Class (MFC) apps Eclipse Rich Clients Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 6 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Rich Client Criterias Mind-share (following the current trend) Support for various platforms Ease of installation Look-and-Feel The ‘Richness’ of the solution Interoperability with other solutions Tooling support Performance Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 7 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation The Eclipse RCP in a Nutshell The Eclipse Rich Client Platform is a subset of the Eclipse platform designed for developing Rich Clients written in Java, using the Eclipse plug-in model for defining individual components using XML manifests. Open Source, free. Uses SWT for close-to-native feeling Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 8 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Eclipse RCP Sample 1 See the EclipseCon website Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 9 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Eclipse RCP Sample 1 GDF Suite Mgmt. Center See the EclipseCon website Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 10 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Eclipse RCP Sample 2 IBM Lotus Workplace Suite See the EclipseCon website Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 11 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Eclipse RCP Motivation Modular approach, using plug-ins written in XML and Java. Connections between plug-ins are loose. Lots of open source plug-ins easily added to your application Eclipse behaves like a native application (due to SWT). Eclipse is a framework. Lots of lessons learned and decisions have been made for you, leaving you more time to focus on your value add. The learning curve will pay off. Upgradeability. Use plug-ins to upload content handlers, and provide users with a given set of abilities and plugins based on their credentials. Versioning. Plug-ins are versioned, platform manages them. Momentum. Coolness factor. Great to put on your resume. Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 12 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation The Eclipse RCP in Detail We will use selected FAQs from the Eclipse FAQ book to address the Rich Client Platform (RCP) sub-set of Eclipse. Each question is modified for the purpose of this presentation and to improve the flow. More details on each topic can be found at http://eclipsefaq.org or in the book. Notice the FAQ number listed at the bottom: Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 13 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Eclipse FAQs Book Structure Book has 3 Parts: 1. Introduction 2. RCP 3. IDE Focus is on Part II, but a plug-in from Part III could easily be added to your RCP application Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 14 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation What Is Eclipse? An open IDE platform for anything, and for nothing in particular. Open: allows for easy extension by third parties. IDE: tooling to manage workspaces; to build, launch and debug applications; team sharing; easy customization of the programming experience. Platform: not a finished application Anything: Java, Web-services, games, etc. Nothing in particular: Java focus is historical. Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 15 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Where Did Eclipse Come From? Core of OTI/IBM products since late 90’s VisualAge for Java (written in Smalltalk with Common Widget Toolkit – CWT) VisualAge Micro Edition (written in Java, first use of SWT) VAME framework generalized into Eclipse Eclipse open source project, Fall 2001 Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 16 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation What Articles Are There? More than 50 at http://eclipse.org/articles Printable format is over 500 pages Covers wide range of Eclipse topics; from SWT to preferences to RCP to Wizards to style guides to internationalization to editor support to using CVS branching. IBM DeveloperWorks also hosts a few dozen articles on Eclipse and products Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 17 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation What Books Are Available? More than 22 were counted in July 2004 Many are introductory with wide coverage Others focus on vertical domain (SWT, EMF) FYI: Amazon lists 1 book for Netbeans Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 18 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Where to Download Eclipse? Eclipse.org/downloads: ¾ Latest Release tested, may be 6 months old ¾ Stable/milestone build, 6 weeks apart ¾ Integration build, each week ¾ Nightly build, mileage varies ¾ directly from CVS, not for the faint of heart Builds are tested and results are posted Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 19 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Eclipse Supported Platforms Microsoft Windows 2000/XP Red Hat Enterprise Linux SuSE Linux 8.2 Sun Solaris 8 SPARC Motif HP HP−UX 11i hp9000 IBM AIX 5L PowerPC Motif Apple Mac OS X Mac OS X QNX Neutrino RTOS Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 20 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation How to Upgrade Eclipse? Use the included Update Manager ¾ works for Eclipse IDE and RCP ¾ upgrade existing plug-ins to later versions ¾ install new plug-ins from third party locations Allows you to build a rich client and have extensions added later (like content handlers or additional business logic) Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 21 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Where to Get Help? Included in your plug-ins/application: ¾Help > Help Contents… ¾F1, context-sensitive help ¾Can be added to an RCP application During development: ¾http://eclipse.org (articles, newsgroups, etc.) ¾Books, tutorials, portals ¾“Use the source, Luke!” Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 22 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation Writing Java Code in Eclipse Beyond the scope of this presentation Main distinguishing factors for Eclipse: ¾Incremental building in background ¾Content Assist ¾Quick Fixes ¾Searching, navigating, class browsing ¾Refactoring ¾Debugging and hot code replace ¾Sharing in a repository Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 23 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation How Do I Create a Plug-in? Plug-in Development Environment (PDE) has special wizards to get you going quickly Use code templates to create a plug-in with: ¾A toolbar button and a menu option ¾An editor ¾A view (with a tree or a table) ¾A property page ¾A new perspective Help > Cheat Sheet… Chris Laffra — The Eclipse Rich Client Platform (RCP) Page 24 Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation How Do I Edit a Plug-in? Plug-in Manifest editor

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    88 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us