• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Eclipse RCP Overview @ Rheinjug
 

Eclipse RCP Overview @ Rheinjug

on

  • 2,965 views

Eclipse RCP Overview

Eclipse RCP Overview

Statistics

Views

Total Views
2,965
Views on SlideShare
2,965
Embed Views
0

Actions

Likes
1
Downloads
82
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Eclipse RCP Overview @ Rheinjug Eclipse RCP Overview @ Rheinjug Presentation Transcript

    • Eclipse Rich Client Platform
      The amazing simplicity of creating RCP application
      Lars Vogel
      http://www.vogella.de
    • Agenda
      What is RCP?
      OSGi
      Modular Architecture
      RCP
      e4 (lets see if we have time….)
      … and some life hacking
    • What is an Eclipse RCP application?
      Local running application using the native widget toolkit
      Based on the Eclipse runtime and technology
    • Eclipse (RCP) applications are written in Javain little pieces (plugins)
    • Extensible Application - Firefox
      Plugins
      The Browser
    • OSGi
      Dynamic module system in Java
    • Bundle
      Smallest deployment and development component in OSGi
      Bundle == Plugin
      Bundle
      Plugin
    • Each Plugin defines its available API
    • Each Plugin defines also its dependencies
    • MANIFEST.MF –
      Additional metadata for OSGi runtime
    • Runtime (OSGi) makes sure the API contacts are fulfilled
    • Demo
    • OSGi – Enforced Modularity
      Standard Java App
      Modular Java App
    • Anatomy of Eclipse RCP
    • In Eclipse everything is a plugin (except the core runtime)
      Plugin
      Plugin
      Plugin
      Plugin
      Plugin
      Runtime
    • Eclipse IDE
      Help
      P2 Update
      Text
      Compare
      Debug
      Search
      Team/ cvs
      IDE personality
      Workbench
      Resources
      JFace
      Runtime / Equinox (OSGi)
      SWT
    • Component model
      Rich user experience
      OS independent
      Extensible
      Community
      e4
      Why Eclipse RCP?
    • Your plugins
      Eclipse Plugins
    • Eclipse RCP
      Your Server communication
      Your Security
      Your UI Layer
      Help
      P2 Update
      Other Stuff
      Workbench
      Your data model
      JFace
      Runtime / Equinox (OSGi)
      SWT
    • A closer look
    • Your first RCP app in < 10 secs
    • Defines OSGi bundle properties
      Important configuration file- MANIFEST.MF -
      You said that already in the OSGi chapter ….
    • Important configuration files- plugin.xml -
      Defines extensions and extension points
    • Extensions
      Extension Points
      Provide functionality to predefined slots (== extension points)
      Define places where others (== extensions) can provide functionality
    • The building blocks
    • Thin layer upon the native GUI libraries
      JNI calls
      Not a lot of convenient functionality
      SWT - Standard Widget Toolkit
    • JFace
      UI toolkit that provides helper classes for developing UI features
      Makes SWT nicer but does not hide its complexity
      Tables / TreeViewer / Dialogs /
      Databinding
      Workbench
      multi-window environment
      manages views, editors, perspectives 
      JFace & Workbench
    • Lets create a RCP app
    • Find in Eclipse which parts you are looking at
      Make coding analysis and re-use extremly easy
      Shortcut Alt+Shift+F1
      Add org.eclipse.pde.runtime and org.eclipse.ui.forms as dependency to have Plug-in Spy in your own RCP application
      29
      Excursus: Plug-in Spy
      How did he do it?
      Plugin Spy = Shortcut Alt+Shift+F1
      Lars Vogel 4/22/2009
    • e4 ?
    • Eclipse e4
      Eclipse e4 is the incubator project which will produce the Eclipse 4.0 SDK
    • Eclipse e4 Scope
      Make developmentfor Eclipseeasier
    • Eclipse 3.x programming model
      Complex
      Lots of API
      Platform functionality via singletons
      Not easy to test
      Not a consistent way to define the UI
    • Eclipse e4 – Building blocks
      Modeled Workbench
      Rendering Engine
      Declarative Styling
      Dependecy Injection
      Context
      Core Services
    • Summary
    • Eclipse: Where to go from here:
      Eclipse Wiki
      http://wiki.eclipse.org/
      Eclipse RCP Tutorial
      http://www.vogella.de/articles/RichClientPlatform/article.html
      Eclipse Plugin Development
      http://www.vogella.de/articles/EclipsePlugIn/article.html
      Eclipse e4 Tutorial
      http://www.vogella.de/articles/EclipseE4/article.html
    • Photo credits
      Clothes http://www.sxc.hu/photo/418618
      Agenda http://www.sxc.hu/photo/1089869
      Dotted guy http://www.sxc.hu/photo/1103660
      RCP Definition http://www.sxc.hu/photo/930468
      OSGI Defintion http://www.sxc.hu/photo/975495
      Building block http://www.sxc.hu/photo/596908
      Where to go http://www.sxc.hu/photo/448543
      Hurt fingers http://www.sxc.hu/photo/906072
      Police http://www.sxc.hu/photo/860421
      API http://www.sxc.hu/photo/603920
      Pluginvrs. bundles http://www.sxc.hu/photo/1010558
      Manifst.mf http://www.sxc.hu/photo/764999
      Structured vrs. chaos
      • http://www.sxc.hu/photo/941292
      • Why RCP http://www.sxc.hu/photo/660438
      • Woman with phone http://www.sxc.hu/photo/485640
      • Funny guy http://www.sxc.hu/photo/1173019
      • Dependencies http://www.sxc.hu/photo/182575
      • Extension http://www.sxc.hu/photo/721092
      • Dog http://www.sxc.hu/photo/302062
      • Plugin spy http://www.sxc.hu/photo/130484
      • Lego http://www.sxc.hu/photo/338038
      • e4 target http://www.sxc.hu/photo/839037
      • Summary http://www.sxc.hu/photo/1184807
      • Question http://www.sxc.hu/photo/418215
      • Reading material http://www.sxc.hu/photo/406547
      • Thank you http://www.sxc.hu/photo/986313
    • Thank you
      For further questions:
      Lars.Vogel@gmail.com
      http://www.vogella.de
      http://www.twitter.com/vogella
    • License & Acknowledgements
      This work is licensed under the Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Germany License
      See http://creativecommons.org/licenses/by-nc-nd/3.0/de/deed.en_US