Sunday, December 12, 2010

Book Review: Practical Eclipse Rich Client Platform Projects

About:
This blog entry is about a quick review of a book I recently read - Practical Eclipse Rich Client Platform Projects.

Eclipse Rich Client Platform (RCP) is new technology I am trying to become familiar with. The long term objective is to find any situation where I can use RCP to help my automation tasks.

I will capture my understanding of the technology as I learned from this book. This blogs contains only my view - be that right or wrong.

Review:
What is Eclipse? Here is how I know Eclipse to be. Eclipse is a Java development IDE that I use 10 hours a day, 5 days a week. I create amazing pieces of software with it. I use different plug-ins created by the wonderful people and these plug-ins make my life a lot easier.

This is how the Eclipse Foundation defines Eclipse to be - "Eclipse is an open source community, whose projects are focused on building an open development platform comprised of extensible frameworks, tools and run-times for building, deploying and managing software across the life-cycle." (Source: here).

As I think more about it, my experience is the reflection of the vision of Eclipse Foundation. This book on RCP describes different architectural components of Eclipse and how I can use them to enhance this platform (to make my life easier).

Eclipse Foundation wanted to see Eclipse (the IDE) as Rich Client Platform (RCP). This is a marketing attempt to invite and encourage developers create software that can run inside Eclipse. To back this vision up, Eclipse have be designed with ways to extend and integrate new software (in the mode of plug-ins). (I guess Eclipse Foundation envisioned it to grow it as big as Emacs.) .

Summary so far is, Eclipse Foundation encourages you to use Eclipse to create software on top of it, as it is a RCP. When you use write any software for Eclipse, you write a plug-in (which is one of Eclipse RCP components)

To use Eclipse as RCP, certain components work together:

  • Equinox (Eclipse's implementation of OSGi, a standard way of creating inter-connection between software)
  • Core platform (glues everything together; allows to write plug-in)
  • Standard Widget Toolkit (a.k.a. SWT)
  • JFace (Another component that works together with SWT)
  • Eclipse IDE workbench (that's the playground of your plug-ins)
(To be continued)


Reference:

Source of the book:
My local public library - Queens Library, Central Branch.

Vocabularies:
  • RCP = Rich Client Platform

No comments: