Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Rich Client Platform (RCP) » how to use extension points sensible
how to use extension points sensible [message #413923] Tue, 08 March 2005 12:16 Go to next message
Thomas Richter is currently offline Thomas RichterFriend
Messages: 61
Registered: July 2009
Member
Hi,
I want to create an rcp application, with at least two plugins.
Core: - property page
- view
- kind of data container
Plugin: - property page
- view that uses the core
But how to use extension points in a common sense.
I don't know when to use and when not. And what implications arising out
of it. Or can I write an application of not only _one_ plugin without
extension points?

mfg Thomas Richter

--
Thomas Richter 'Codito ergo sum' Diplominformatiker Softwareentwickler
tr@ariva.de http://www.ariva.de
+(49) 0431/97108-27
Börse Kurse Charts Aktien Zertifikate Anleihen Fonds Devisen
Re: how to use extension points sensible [message #413926 is a reply to message #413923] Tue, 08 March 2005 16:14 Go to previous message
Chris Laffra is currently offline Chris LaffraFriend
Messages: 253
Registered: July 2009
Senior Member
You can view a plugin as the next OO abstraction layer. In other words, here
is the abstraction/organization hierarchy: statements > control flow >
methods > classes > packages > plugins > applications > products.

You can access all the functionality in plugin A from plugin B simply by
adding A to B's list of required plugins. This way, you can access model
classes defined by Core and directly obtain them from your client plugin. No
extension points are needed. This is how everyone gets access to SWT, for
instance.

You want to use extension points if you want to decouple plugins. In other
words, your declare an interface to get to your model in Core. In addition
you define a hidden and internal-only implementation in Core. Then you
define an extension point for 'modelListener's. Your client plugin would
contribute to the extension point and communicate with Core only using the
publicized interface. It will never see the concrete implementation classes,
and Core is free to change its internal implementation as long it keeps the
public api.

The book "Contributing to Eclipse" has an authoritative discussion on the
design tradeoffs of using extension points. The JavaSpider tool discussed in
the book has a couple of nice examples how extension points can be used to
decouple independent parts of an eclipse application. It even uses extension
points as a design tool to implement functionality _within_ one plugin.

--
Chris Laffra, http://eclipsefaq.org


"Thomas Richter" <tr@ariva.de> wrote in message
news:d0k53g$57q$1@www.eclipse.org...
> Hi,
> I want to create an rcp application, with at least two plugins.
> Core: - property page
> - view
> - kind of data container
> Plugin: - property page
> - view that uses the core
> But how to use extension points in a common sense.
> I don't know when to use and when not. And what implications arising out
> of it. Or can I write an application of not only _one_ plugin without
> extension points?
>
> mfg Thomas Richter
>
> --
> Thomas Richter 'Codito ergo sum' Diplominformatiker Softwareentwickler
> tr@ariva.de http://www.ariva.de
> +(49) 0431/97108-27
> B
Previous Topic:removal of default eclipse toolbar
Next Topic:Editor does not show up. Help anyone?
Goto Forum:
  


Current Time: Thu Apr 25 13:56:08 GMT 2024

Powered by FUDForum. Page generated in 0.02748 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top