大梦想家

5年开发工程师,2年实施经理,X年售前顾问,......
数据加载中……
RCP实践之软件架构
    RCP还是新兴的东西,大家都是用它做做小东东,所以在网上讨论RCP深度应用的文章还不多。
    在此作文N篇阐述一下我在项目中的实现思路,欢迎大家拍砖。
    首先看一下我们的项目的总体架构:
 

    这个图谁都会画,就不说了,只是说明我们在用RCP而已。
    再看看Client这层是怎么组成的:
    依赖关系是自上而下的~,当然大家都需要依赖RCP-RUNNTIME本身。
    jar plugin ---将第三方jar包包装成plugin样子,以供其他的插件依赖,解决了RCP项目对第三方包依赖麻烦的问题,例子:junit插件的实现;
    DMP Platform ---DMP是我们产品的名字,所以,不要立即google,在这层我们抽象的定义出大量的公共的CoolBar以及MenuBar,都是尚未实现的,以待业务扩充之用,最重要的是在这层中我们集中处理权限问题,后面会说到;
    业务组建(plugin)---其实就是针对于DMP Platform编写的一大堆的插件,而这些插件则是业务相对独立,这样就遵守了Eclipse的原则,所有东西都以插件形式提供的,也方便了我们以后对软件的定制化开发;

    纵观国内外RCP的应用(国内本身就是很少),很少有RCP应用使用Eclipse的思想进行开发的,都是一个项目直接上~就一个UI层~什么都有!如果是这样,还不如用VC,VB更简单~
    Eclipse RCP最好的应用还是Eclipse本身,Platform仅仅提供对文件的最简单的管理能力,而且定义一堆共用的Action,其他东西(JDT,ANT,JUNIT等等)都是以插件形式出现的~只有有了插件,才有了RCP业务动态扩充的动态组合的新理念。


客户虐我千百遍,我待客户如初恋!

posted on 2007-06-19 21:22 阿南 阅读(1941) 评论(7)  编辑  收藏 所属分类: Eclipse-RCP

评论

# re: RCP实践之软件架构 2007-06-19 22:59 SoulEngineer

我们目前的架构也差不多,不过我们是改了ibatis,现在所有的业务插件都是独立的,包括ibatis的配置文件
  回复  更多评论    

# re: RCP实践之软件架构 2007-06-20 08:27 阿南

那么说你们的服务器端也是基于插件的了?
  回复  更多评论    

# re: RCP实践之软件架构 2007-06-20 12:52 BeanSoft

...说好多公司做 RCP 应用, 其实就是做 SWT 应用... 说实话桌面应用最好的工具还是那些 RAD 工具, RCP 好多组件/模块就算用 RCP 也还得自己做, 例如 DBTable 这样的东西, 目前来讲 RCP 最好的应用就是做 IDE.
  回复  更多评论    

# re: RCP实践之软件架构 2007-06-20 17:16 xyz

基本上写的空对空,等于啥也没说。业务plugin和这里所谓的DMP plugin是平行关系,虽然业务的plugin依赖与dmp及里面包含的jar,但dmp本身也是个plugin.这个东西还谈不上什么架构,只不过是编程的一个基本思想,减少冗余代码而已。"纵观国内外RCP的应用(国内本身就是很少),很少有RCP应用使用Eclipse的思想进行开发的,都是一个项目直接上~就一个UI层~什么都有!"我不知道你是从哪得到这个结论的。
  回复  更多评论    

# re: RCP实践之软件架构 2007-06-20 19:40 三人行,必有我师焉

居然在用我们公司的产品……
  回复  更多评论    

# re: RCP实践之软件架构 2007-06-21 10:07 SoulEngineer

我们这套架构原本是用来开发停车场应用的,基本上都是CLIENT,基本上的架构已经搭建出来,也开发了一些简单的应用
  回复  更多评论    

# re: RCP实践之软件架构[未登录] 2007-06-21 15:33 哈哈

大家不要这么嘛,我觉得作者还是很努力地思考了,期待你dmp部分的安全的实现,如果dmp部分为其他业务plugin提供了安全、数据库事务等服务的话,我想dmp称为平台也可以接受。期盼作者新文章!
  回复  更多评论    

只有注册用户登录后才能发表评论。


网站导航: