關(guān)于Plugin Framework的關(guān)鍵因素

          Plugin System現(xiàn)在的流行程度已經(jīng)勿庸置疑了,在N多的白皮書、解決方案中都可以看到即插即用這樣的詞語(yǔ),而市場(chǎng)上面向構(gòu)件、插件的軟件也是越來(lái)越多,其實(shí)插件式的組裝系統(tǒng)或者說(shuō)搭積木式的組裝系統(tǒng)一直就是軟件界的追求,但對(duì)于Plugin System還是有些迷惑的地方,還望大家一起討論討論,^_^,目前的Plugin Framework基本都是一種Kernel+Core Plugins組成的結(jié)構(gòu)體系,說(shuō)出來(lái)就是all are plugins,^_^,典型的就如Eclipse,其實(shí)Maven也算的上的

                   通常一個(gè)Plugin Framework的職責(zé)就是:

          1、   搜索相應(yīng)目錄,并將目錄下可作為Plugin的部分注冊(cè)到Plugin Framework

          2、   提供外部調(diào)用Plugin的方法

          3、   Plugin之間相互交互的方法

          4、   Plugin的加載,根據(jù)其描述構(gòu)建相應(yīng)的ClassLoader

          5、   Plugin的編寫說(shuō)明

          當(dāng)然,一個(gè)好的Plugin Framework應(yīng)該還提供Plugin開發(fā)向?qū)В?/SPAN>Plugin開發(fā)、調(diào)試、部署的IDE等等

                   主要希望就下面幾點(diǎn)來(lái)進(jìn)行討論,呵呵,當(dāng)然,大家也可以增加一些大家認(rèn)為值得討論的部分:

          1、   Plugin的編寫

          你構(gòu)思中一個(gè)好的Plugin System會(huì)要求Plugin如何編寫,我考慮中一個(gè)好的Plugin System對(duì)Plugin沒有任何編碼上的要求,要求的只是其描述文件的編寫。

          2、   Plugin的部署

          Plugin的部署,如何更加方便的去部署一個(gè)Plugin,就象Osgi可以通過網(wǎng)絡(luò)訪問等等,考慮中根據(jù)配置從相應(yīng)的目錄或網(wǎng)站搜索Plugin并注冊(cè)到系統(tǒng)中

          3、   Plugin的調(diào)用

          對(duì)于Plugin的調(diào)用,根據(jù)Plugin的描述采取相應(yīng)的方式調(diào)用Plugin,例如webservice方式、socket方式等等

          4、   Plugin的交互

          對(duì)于Plugin的交互,也許可以參考Maven的方式,比如需要調(diào)用其他的plugin,則采用類似這樣的配置或調(diào)用<attain plugin=”pluginname” function=”sendmail”/>抑或采用IoC容器注入依賴??

          5、   Plugin的擴(kuò)展

          對(duì)于Plugin的擴(kuò)展,這個(gè)Eclipse的擴(kuò)展點(diǎn)完全值得參考

          6、   Plugin的依賴關(guān)系的分析

                   這是我構(gòu)思中的一個(gè)東西,希望系統(tǒng)所有的模塊都基于此Plugin Framework,然后我們可以根據(jù)這些模塊Plugin來(lái)分析整個(gè)系統(tǒng)
                   中各模塊的依賴關(guān)系等等,并進(jìn)行監(jiān)控,甚至在將來(lái)可以圖形化的進(jìn)行配置,圖形化搭積木式的搭建自己的系統(tǒng),
          ^_^

          也希望能聽到大家關(guān)于Plugin Framework技術(shù)方面的更多東西,例如采用Osgi實(shí)現(xiàn)Plugin Framework的實(shí)現(xiàn)思路等等

          posted on 2005-05-25 15:42 BlueDavy 閱讀(3368) 評(píng)論(1)  編輯  收藏 所屬分類: Plugin Architecture

          評(píng)論

          # re: 關(guān)于Plugin Framework的關(guān)鍵因素 2006-06-12 11:05 綠色使者、綠色心情

          這幾點(diǎn)挺好的,在此基礎(chǔ)上,我比較了spring和sca的一些類似特點(diǎn)  回復(fù)  更多評(píng)論   

          公告

           









          feedsky
          抓蝦
          google reader
          鮮果

          導(dǎo)航

          <2005年5月>
          24252627282930
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          統(tǒng)計(jì)

          隨筆分類

          隨筆檔案

          文章檔案

          Blogger's

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 大同市| 信阳市| 苍山县| 灵川县| 新泰市| 孝昌县| 黎城县| 张家港市| 浮山县| 龙山县| 虎林市| 十堰市| 长宁县| 托克逊县| 万载县| 从江县| 华亭县| 门源| 牟定县| 镇康县| 遂昌县| 高淳县| 涿鹿县| 旺苍县| 开江县| 张家港市| 敦煌市| 阜南县| 北川| 竹山县| 塘沽区| 醴陵市| 隆化县| 潍坊市| 安顺市| 伊川县| 理塘县| 蓝田县| 通渭县| 湾仔区| 察隅县|