It’s a very interesting possibility to use the same code base for RCP and Web applications. But this will not replace RCP applications, and single sourcing is of course not for free. You have to divide your code in common part, a RCP part and a Web part. This can be done via bundle fragments (and the delegate pattern). This reminds me a little bit to

#if defined (WIN32)
 ...
#elif defined (LINUX)
...
#endif

blocks in C++.

The software-update-button for example doesn’t make sens in an Web application. As the talk points out, there is also no graphic context within a Web application. So you can’t draw arbitrary shapes, as it’s possible in an RCP application. There is also no possibility to catch every mouse-move event, which will provoke heavy network traffic to the server.

The conclusion for me is, that it is a very interesting possibility to reuse code, but not the silver bullet, as some people think (or hope).

Share and Enjoy:
  • Digg
  • del.icio.us