大夢想家

          5年開發(fā)工程師,2年實(shí)施經(jīng)理,X年售前顧問,......
          數(shù)據(jù)加載中……
          RCP實(shí)踐之軟件架構(gòu)
              RCP還是新興的東西,大家都是用它做做小東東,所以在網(wǎng)上討論RCP深度應(yīng)用的文章還不多。
              在此作文N篇闡述一下我在項(xiàng)目中的實(shí)現(xiàn)思路,歡迎大家拍磚。
              首先看一下我們的項(xiàng)目的總體架構(gòu):
           

              這個(gè)圖誰都會(huì)畫,就不說了,只是說明我們在用RCP而已。
              再看看Client這層是怎么組成的:
              依賴關(guān)系是自上而下的~,當(dāng)然大家都需要依賴RCP-RUNNTIME本身。
              jar plugin ---將第三方j(luò)ar包包裝成plugin樣子,以供其他的插件依賴,解決了RCP項(xiàng)目對第三方包依賴麻煩的問題,例子:junit插件的實(shí)現(xiàn);
              DMP Platform ---DMP是我們產(chǎn)品的名字,所以,不要立即google,在這層我們抽象的定義出大量的公共的CoolBar以及MenuBar,都是尚未實(shí)現(xiàn)的,以待業(yè)務(wù)擴(kuò)充之用,最重要的是在這層中我們集中處理權(quán)限問題,后面會(huì)說到;
              業(yè)務(wù)組建(plugin)---其實(shí)就是針對于DMP Platform編寫的一大堆的插件,而這些插件則是業(yè)務(wù)相對獨(dú)立,這樣就遵守了Eclipse的原則,所有東西都以插件形式提供的,也方便了我們以后對軟件的定制化開發(fā);

              縱觀國內(nèi)外RCP的應(yīng)用(國內(nèi)本身就是很少),很少有RCP應(yīng)用使用Eclipse的思想進(jìn)行開發(fā)的,都是一個(gè)項(xiàng)目直接上~就一個(gè)UI層~什么都有!如果是這樣,還不如用VC,VB更簡單~
              Eclipse RCP最好的應(yīng)用還是Eclipse本身,Platform僅僅提供對文件的最簡單的管理能力,而且定義一堆共用的Action,其他東西(JDT,ANT,JUNIT等等)都是以插件形式出現(xiàn)的~只有有了插件,才有了RCP業(yè)務(wù)動(dòng)態(tài)擴(kuò)充的動(dòng)態(tài)組合的新理念。


          客戶虐我千百遍,我待客戶如初戀!

          posted on 2007-06-19 21:22 阿南 閱讀(1969) 評論(7)  編輯  收藏 所屬分類: Eclipse-RCP

          評論

          # re: RCP實(shí)踐之軟件架構(gòu) 2007-06-19 22:59 SoulEngineer

          我們目前的架構(gòu)也差不多,不過我們是改了ibatis,現(xiàn)在所有的業(yè)務(wù)插件都是獨(dú)立的,包括ibatis的配置文件
            回復(fù)  更多評論    

          # re: RCP實(shí)踐之軟件架構(gòu) 2007-06-20 08:27 阿南

          那么說你們的服務(wù)器端也是基于插件的了?
            回復(fù)  更多評論    

          # re: RCP實(shí)踐之軟件架構(gòu) 2007-06-20 12:52 BeanSoft

          ...說好多公司做 RCP 應(yīng)用, 其實(shí)就是做 SWT 應(yīng)用... 說實(shí)話桌面應(yīng)用最好的工具還是那些 RAD 工具, RCP 好多組件/模塊就算用 RCP 也還得自己做, 例如 DBTable 這樣的東西, 目前來講 RCP 最好的應(yīng)用就是做 IDE.
            回復(fù)  更多評論    

          # re: RCP實(shí)踐之軟件架構(gòu) 2007-06-20 17:16 xyz

          基本上寫的空對空,等于啥也沒說。業(yè)務(wù)plugin和這里所謂的DMP plugin是平行關(guān)系,雖然業(yè)務(wù)的plugin依賴與dmp及里面包含的jar,但dmp本身也是個(gè)plugin.這個(gè)東西還談不上什么架構(gòu),只不過是編程的一個(gè)基本思想,減少冗余代碼而已。"縱觀國內(nèi)外RCP的應(yīng)用(國內(nèi)本身就是很少),很少有RCP應(yīng)用使用Eclipse的思想進(jìn)行開發(fā)的,都是一個(gè)項(xiàng)目直接上~就一個(gè)UI層~什么都有!"我不知道你是從哪得到這個(gè)結(jié)論的。
            回復(fù)  更多評論    

          # re: RCP實(shí)踐之軟件架構(gòu) 2007-06-20 19:40 三人行,必有我?guī)熝?/a>

          居然在用我們公司的產(chǎn)品……

          # re: RCP實(shí)踐之軟件架構(gòu) 2007-06-21 10:07 SoulEngineer

          我們這套架構(gòu)原本是用來開發(fā)停車場應(yīng)用的,基本上都是CLIENT,基本上的架構(gòu)已經(jīng)搭建出來,也開發(fā)了一些簡單的應(yīng)用
            回復(fù)  更多評論    

          # re: RCP實(shí)踐之軟件架構(gòu)[未登錄] 2007-06-21 15:33 哈哈

          大家不要這么嘛,我覺得作者還是很努力地思考了,期待你dmp部分的安全的實(shí)現(xiàn),如果dmp部分為其他業(yè)務(wù)plugin提供了安全、數(shù)據(jù)庫事務(wù)等服務(wù)的話,我想dmp稱為平臺也可以接受。期盼作者新文章!
            回復(fù)  更多評論    
          主站蜘蛛池模板: 科技| 开鲁县| 安吉县| 鄯善县| 湘乡市| 谢通门县| 滦平县| 鄂尔多斯市| 伊通| 正镶白旗| 班玛县| 松溪县| 合肥市| 徐汇区| 阿克| 北辰区| 海晏县| 旺苍县| 合肥市| 和静县| 合山市| 辉南县| 隆子县| 明水县| 晴隆县| 兴城市| 双桥区| 大庆市| 韶山市| 富民县| 密云县| 邳州市| 砀山县| 陆丰市| 康乐县| 杨浦区| 鸡泽县| 喀什市| 道孚县| 垫江县| 尉氏县|