<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    思考插件架構體系

    插件架構體系是我一直就非常關注的內容,其實插件架構體系的發展已經有很久的背景了,插件架構體系的優點我們也是能看的非常明顯,象硬件一樣的即插即用、無論對于公司還是業界而言的良好的積累方式、為公司或業界提供統一而規范的開發方式以及穩定的內核架構等等,這些優點無論對于公司還是業界來說都是非常重要的。
    插件架構體系基本的一個概念就是基于松散的模塊積累方式,通過新增插件以及擴展原有插件的方法來完成系統的實現,凡事有利必有弊,在看到插件架構體系的這些優點的同時,在實現和使用插件架構體系的時候仍然會碰到不少的問題,我大概的整理了一下,主要有:
    1、插件的定義
          插件的定義可謂是插件架構體系在使用時會碰到的最大的問題,首先要解決的問題就是何謂插件、插件如何去定義?何謂插件這個大家的看法都會有所不同,由于對于何謂插件的看法不同,必然就導致了在整個系統的設計時采用了不同的設計方式,主要是在插件的粒度控制上會有不同的設計方式。
          個人覺得也許采用模塊作為插件是一種可行的方案,采用模塊作為插件的核心思想是按一種從頂至下的設計理念,也就是架構設計中產生的模塊視圖首先作為系統的插件構成視圖,根據對模塊的詳細設計此時又可對模塊的插件進行細一步的劃分,或者是將插件劃的更細,或者是采用插件的擴展機制去實現。
          插件的定義則是帶來了一些設計上的難度的,我仍然覺得需要將插件視為黑盒去看,插件需要提供什么樣的功能、插件需要什么樣的運行環境、插件需要暴露哪些包等等,這個在Osgi中都有相應的映射,在基于插件架構體系進行系統構建的時候插件的粒度、定義我覺得這是最難把握的,甚至覺得難度上會超過以前的模塊設計,需要的是更為規范的模塊式的設計,覺得這個在中小型軟件企業中往往是很難做到的,主要仍然是架構設計時的控制,在設計時重要的因素在于保持系統的松散結構,至于概要設計時則完全可按照架構設計的約束去進行,詳細設計則完全和平時的做法一樣。
    2、插件的依賴
          插件的依賴主要有兩種,一是對于系統已有插件的依賴,另一方面則是對于外部jar包的依賴。這都是在設計時需要做出考慮的,對于插件架構體系而言對已有插件的依賴和對外部jar包的依賴這個差別就比較大了,其實這個在設計上還好辦,因為可以通過重構,本來一直依賴覺得最困難的是對其他插件的依賴怎么辦,難道要去引用其他plugin的lib,在eclipse ide中是解決了這個問題的,所以現在來說插件的依賴在插件體系架構中就顯得沒那么困難了,這說明插件的依賴的解決依賴于一個良好的插件開發IDE。
    3、插件的測試
          插件的測試我這指的不是運行的功能測試,而是單元測試,感覺這個在現在的插件架構體系里還是比較困難的,因為在一種松耦合的架構體系中,對于其他插件的依賴是要在容器運行期才能夠獲取的,覺得這個有點變成了當時ejb container的問題,現在好像得通過mock以及其他的方法去解決,另外一個也許是IoC的策略?這方面需要進一步思考,
    4、插件的調試
          插件的調試主要是依賴容器的調試,現在的eclipse ide已經支持插件的調試,并且好像是支持插件的遠程調試的。
    5、插件開發學習的門檻
           就目前來說插件開發學習的門檻并不算低的,個人覺得至少要對插件體系架構有一定的了解(例如基于Osgi的插件框架,那就要求對OSGI有一定的熟悉),但相對這個門檻而言,其獲得的價值是值得的。

    其實講了這么些問題,集中的主要在于基于插件架構體系的應用框架以及業務系統的設計方式將和以前的會有些變化,這個也是可以理解的,畢竟是受技術架構約束的,另外一方面則主要集中在插件開發的簡易性和質量的保證,這個就得依靠一個強大的插件開發IDE。

    posted on 2005-11-15 11:09 BlueDavy 閱讀(7111) 評論(10)  編輯  收藏 所屬分類: Plugin Architecture系統設計

    評論

    # re: 思考插件架構體系 2005-11-15 13:53 fisher

    也許你該看看eclipse的Equinox項目
    我很想仔細看看,可是一直沒時間
    :(  回復  更多評論   

    # re: 思考插件架構體系 2005-11-15 14:42 Programmer's Life

    呵呵,我已經在用了!
    但其實不管用哪種,上面的這些問題仍然會有部分存在的,這是架構體系帶來的問題。  回復  更多評論   

    # re: 思考插件架構體系 2005-11-15 20:11 fisher

    哦?用于做什么?  回復  更多評論   

    # re: 思考插件架構體系 2006-02-26 17:52 JC

    IMO, 我覺將插件架構上升到構件架構更為合適。
    因為構件架構其實已經包含了構件插口(Component socket)的概念。
    by the way, 可以留下你的聯絡方式交流一下嗎?   回復  更多評論   

    # re: 思考插件架構體系 2006-02-27 21:41 BlueDavy

    MSN:
    bluedavy@hotmail.com  回復  更多評論   

    # re: 思考插件架構體系 2006-08-30 10:18 guangqing

    為什么說,extension對于eclipse那么重要,而osgi卻不提供bundle的擴展機制嗎,然后就是因為它提倡通過service來交互,而eclipse卻一些自己的需求,比如它是一個open的平臺,這樣可以方便大家做contribution?  回復  更多評論   

    # re: 思考插件架構體系 2006-08-30 22:52 BlueDavy

    做為插件框架而言提供擴展點機制很關鍵....  回復  更多評論   

    # re: 思考插件架構體系 2006-08-31 09:35 guangqing

    OSGi core framework不也可以說是一個插件框架么?還有,對于一般的應用而言,比如J2EE應用,有沒有這種必要性為這些應用提供可擴展機制呢?聽說WAS 6.1利用Eclipse extension機制已經可以為J2EE應用提供可擴展功能,但我還不知道具體的表現形式,因為沒有找到sample看  回復  更多評論   

    # re: 思考插件架構體系 2006-08-31 10:37 BlueDavy

    為什么說對于插件框架而言擴展點特別重要呢,因為框架都是要具備開放性,而開放性的框架是需要通過提供擴展的方式來使得開發人員能夠基于框架構建出真正的應用系統。
    Equinox的server-side app就提供了一種擴展點的方式來實現新的servlet和資源文件的注冊。  回復  更多評論   

    # re: 思考插件架構體系 2008-11-20 17:15 西南三少

    在本人所開發的好服組件服務器中,用到了插件化架構思想、反謝方式動態載入DLL、程序域等等思想和技術。
    有興趣請看:http://www.soa365.com/techblog/article_view.aspx?art_id=70  回復  更多評論   

    公告

     









    feedsky
    抓蝦
    google reader
    鮮果

    導航

    <2005年11月>
    303112345
    6789101112
    13141516171819
    20212223242526
    27282930123
    45678910

    統計

    隨筆分類

    隨筆檔案

    文章檔案

    Blogger's

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 精品免费久久久久久成人影院| 麻豆国产精品免费视频| 国产麻豆剧传媒精品国产免费 | 亚洲精品无码久久毛片| 亚洲av永久无码天堂网| 日韩高清在线免费观看| 日韩色视频一区二区三区亚洲| 日本xxwwxxww在线视频免费| 国产亚洲精品精品精品| 亚洲电影日韩精品| 一级免费黄色大片| 在线观看亚洲精品福利片| 国产一级a毛一级a看免费人娇| 亚洲国产精品嫩草影院在线观看| 久久精品一区二区免费看| 亚洲精品影院久久久久久| 最新欧洲大片免费在线| 极品色天使在线婷婷天堂亚洲 | 亚洲国产一区二区三区| 国产免费人成视频尤勿视频| 亚洲s色大片在线观看| 2022久久国产精品免费热麻豆| 亚洲a级片在线观看| 国产免费一区二区三区VR| 国产免费牲交视频免费播放| 亚洲国产精品一区二区久久hs| 最近2018中文字幕免费视频| 亚洲偷自拍另类图片二区| 免费va人成视频网站全| 久久成人免费大片| 亚洲人成电影网站免费| 在线观看午夜亚洲一区| 真人做A免费观看| 人人爽人人爽人人片A免费| 亚洲精品综合一二三区在线| 成年人免费网站在线观看| 又粗又长又爽又长黄免费视频| 亚洲国产女人aaa毛片在线 | 国产成人无码免费看片软件| 亚洲国产精久久久久久久| 永久在线毛片免费观看|