Should I adopt Eclipse RCP?

G

gwlucas07

I hope that this posting doesn't start a holy war, because it really
is a sincere question.

The group that I work for is giving serious consideration to starting
an effort to completely re-factor a large amount of software that is
used for emergency response, dispatching, and similar applications. We
want to move to Java, a language that we all like. The question that
remains is: which environment shall we use, Java Swing or the Eclipse
Rich Client Platform (RCP)?

A few months ago, when I was first assigned the task of investigating
the Eclipse RCP, I would have said "yes, with the Eclipse RCP, Java
has finally come into its own." Now, having worked with it, I am not
so sure. I have spent many, many frustrating hours dealing with
problems related to the environment... However, I am willing to
attribute these to "learning curve" and hope that once solved they
wouldn't be problems in the future (most of them were due to the plug-
in and classloader issues which are inexcusably, badly documented).
Still, my enthusiasm for the environment has definitely lost its edge.

So I am posting this note to ask about the experience of others and
what you think about the long-term viability of projects written in
the Eclipse Rich Client Platform environment. The stakes are fairly
high for me. If my group were to adopt the RCP, it would be on my
recommendation. If the RCP ultimately proved unworkable (or doomed to
obsolence), it would have a strongly negative impact on both people
whom I work with and a job that I like. So I am taking this seriously.
Therefore I request any insights or advice that you may have to offer.

Thank you in advance for you help.

Gary
 
L

Lew

I hope that this posting doesn't start a holy war, because it really
is a sincere question.

The group that I work for is giving serious consideration to starting
an effort to completely re-factor a large amount of software that is
used for emergency response, dispatching, and similar applications. We
want to move to Java, a language that we all like. The question that
remains is: which environment shall we use, Java Swing or the Eclipse
Rich Client Platform (RCP)?

Why aren't you also considering the NetBeans application platform?
 
G

gwlucas07

Why aren't you also considering the NetBeans application platform?

--

Lew,

I simply wasn't aware that it was a viable alternative. I take it that
you see it as a contender. Are there particular advantages you see in
using NetBeans as an application platform? Can you point me in the
direction of a good place to start researching this matter?

Everyone else,

Just as a clarification, Lew and I are talking about using NetBeans
not as an IDE, but as the basis for writing other, custom applications
(which may not look anything like an IDE).
 
R

Ricardo Palomares Martinez

(e-mail address removed) escribió:
Lew,

I simply wasn't aware that it was a viable alternative. I take it that
you see it as a contender. Are there particular advantages you see in
using NetBeans as an application platform? Can you point me in the
direction of a good place to start researching this matter?


You may want to start with:

http://platform.netbeans.org/tutorials/index.html

Another possible option could be to take a look to the Swing
Application Framework (JSR 296) which would be IDE-agnostic. The
drawback is that it is still in its early stages. You may get more
information at:

http://jcp.org/en/jsr/detail?id=296

HTH

P.S.: you don't need to feel guilty to use NetBeans as an IDE. ;-)
 
L

Lew

I simply wasn't aware that it was a viable alternative. I take it that
you see it as a contender. Are there particular advantages you see in
using NetBeans as an application platform? Can you point me in the
direction of a good place to start researching this matter?

Umm, how about netbeans.org?

<http://www.netbeans.org/products/platform/>

I don't know about advantages or disadvantages, since I haven't ever used it.
I was simply curious why you hadn't considered it.

I have never used Eclipse's platform, either.

At least with Netbeans's offering you'll be using Sun-standard Swing graphics
library. AIUI Eclipse relies on the SWT graphics library.

For what graphics programming I've done in Java I've used Swing. I need to
know it anyway, and I avoided the learning curve of the platforms. As IDEs,
both Eclipse and Netbeans include GUI builders that help you create a robust
Java user interface.

I have never heard from anyone that either rich-client platform was helpful.
Or unhelpful.
 
C

Christian

I hope that this posting doesn't start a holy war, because it really
is a sincere question.

The group that I work for is giving serious consideration to starting
an effort to completely re-factor a large amount of software that is
used for emergency response, dispatching, and similar applications. We
want to move to Java, a language that we all like. The question that
remains is: which environment shall we use, Java Swing or the Eclipse
Rich Client Platform (RCP)?

A few months ago, when I was first assigned the task of investigating
the Eclipse RCP, I would have said "yes, with the Eclipse RCP, Java
has finally come into its own." Now, having worked with it, I am not
so sure. I have spent many, many frustrating hours dealing with
problems related to the environment... However, I am willing to
attribute these to "learning curve" and hope that once solved they
wouldn't be problems in the future (most of them were due to the plug-
in and classloader issues which are inexcusably, badly documented).
Still, my enthusiasm for the environment has definitely lost its edge.

So I am posting this note to ask about the experience of others and
what you think about the long-term viability of projects written in
the Eclipse Rich Client Platform environment. The stakes are fairly
high for me. If my group were to adopt the RCP, it would be on my
recommendation. If the RCP ultimately proved unworkable (or doomed to
obsolence), it would have a strongly negative impact on both people
whom I work with and a job that I like. So I am taking this seriously.
Therefore I request any insights or advice that you may have to offer.

Thank you in advance for you help.

Gary

My experience with eclipse rcp is that it helps you a lot if you need
Desktop applications..
It allows you to develop client applications rather easy.. though I
really would recommend you reading a book about it.. without you will be
lost...
Erich Gamma the one who wrote Design Pattern, also wrote a book on the
rcp framework that may get you started..

I don't know much about the alternative netbeans framework.. though what
I can say what may help you later with rcp is:

swt/jface/eclipseui ... for a Desktop app I would prefer them over swing
... and using them without rcp is a hassle.. also programming swt
without jface is like reinventing the wheel and far away from the power
you have with swing .. the ui classes from eclipse round it up
(workbenchparts took a lot of work from me)
though you can be shure that swing catches up for native tasks .. as we
can see in Desktop class or SplashScreen of java6 .. on the other hand
nothing hinders you to also use swing in your rcp application..

what may also be interesting for your desktop apps is the implemented
update functionality.. and the helpsystem...

the next is the plugin system.. if used well it is not also good for
extensibility but also for structuring of your code.. deviding your
application into plugins will force you into a good package structure..
the price for this is that obfuscation gets harder..

also be shure your apps will contain native code.. so your deployment
process will get more complicated.. as you need for each os a different
binary..
there is for example no longer an easy
runtime.exex("java -jar app.jar");
to execute your java app from some other app
its the ugly side of native starters..
also some things get harder to use like rmi



Your company would not be the first to use it.. I think NASA also
switched to use RCP for their softwareprojects..

And about future support... well RCP will be developed further.. there
are some large companys behind it, i.e. IBM, SAP, HP.. and a hundred
more. RCP is eclipse.

Also there are some oss-projects that are rather successful with rcp ..
like Azureus (Top ranked project on sourceforge)


hope that helps a bit for your decision
Christian
 
G

gwlucas07

Previously:

Thank you all for your replies. Although I am no less undecided than
before, you have given me a broader perspective than I had when I
first posted.

Gary

P.S. If anyone has more to add, please feel free to contact me.
 
J

John Gunther

I hope that this posting doesn't start a holy war, because it really
is a sincere question.

The group that I work for is giving serious consideration to starting
an effort to completely re-factor a large amount of software that is
used for emergency response, dispatching, and similar applications. We
want to move toJava, a language that we all like. The question that
remains is: which environment shall we use,JavaSwingor the Eclipse
Rich Client Platform (RCP)?

A few months ago, when I was first assigned the task of investigating
the Eclipse RCP, I would have said "yes, with the Eclipse RCP,Java
has finally come into its own." Now, having worked with it, I am not
so sure. I have spent many, many frustrating hours dealing with
problems related to the environment... However, I am willing to
attribute these to "learning curve" and hope that once solved they
wouldn't be problems in the future (most of them were due to the plug-
in and classloader issues which are inexcusably, badly documented).
Still, my enthusiasm for the environment has definitely lost its edge.

So I am posting this note to ask about the experience of others and
what you think about the long-term viability of projects written in
the Eclipse Rich Client Platform environment. The stakes are fairly
high for me. If my group were to adopt the RCP, it would be on my
recommendation. If the RCP ultimately proved unworkable (or doomed to
obsolence), it would have a strongly negative impact on both people
whom I work with and a job that I like. So I am taking this seriously.
Therefore I request any insights or advice that you may have to offer.

Thank you in advance for you help.

Gary

I use Eclipse as my IDE, plus Swing. Though I had trouble getting
started with Swing at first, and there are real annoyances, after
working with it for a while in a desktop application context, I grew
to have a lot of confidence in it. Its defects, though real, are only
skin-deep. I frowned when I couldn't change ProgressMonitor's title,
but I smiled when a form with 10,000 JPanels was fast enough to be
usable. Can't comment on the other choice, but Swing will annoy you at
first, but won't let you down in the end, in my experience.

If you are new to Swing, my favorite "make it easier to use tool" is
JComponentBreadboard (http://sourceforge.net/projects/jcbreadboard)

John Gunther
 
T

Tonny Madsen

Hi Gary,

I think you can ease the pain of learning Eclipse RCP API by getting
some training. The Eclipse RCP API is rather large and the courses we
do for the base platform (so no GEF, EMF, BIRT, etc) is for four
rather packed days. And even then there are several subjects that are
left out.

There are several companies is US that offers courses - just look at
http://www.eclipseplugincentral.com/Services-index-req-viewcatlink-cid-1.html
for a list of the more well known...

Best regards,
Tonny Madsen
The RCP Company
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Members online

Forum statistics

Threads
473,769
Messages
2,569,579
Members
45,053
Latest member
BrodieSola

Latest Threads

Top