插件開發(fā)框架其實和目前開源界流行的MVC框架之類的相同,都決定了基于這個框架的開發(fā)方式,如基于MVC框架,就會按照MVC思想來進行開發(fā),而插件開發(fā)框架呢,也是同樣如此,就要求基于插件的方式來進行開發(fā),不過插件開發(fā)框架和MVC框架又有不同,插件開發(fā)框架是一個可以成為系統(tǒng)基礎(chǔ)架構(gòu)的框架,而MVC框架通常來講不足以成為,如在目前的MVC框架Webwork、Struts上我們通常都需要加上Spring、Hibernate來構(gòu)成系統(tǒng)完整的基礎(chǔ)架構(gòu),這個時候由于MVC框架的實現(xiàn)是沒有標(biāo)準(zhǔn)可參照的,就造成了在各種系統(tǒng)中形成了不同的但很類似的基礎(chǔ)架構(gòu),但卻造成了無法復(fù)用的現(xiàn)象;插件開發(fā)框架則是作為統(tǒng)一系統(tǒng)基礎(chǔ)架構(gòu)的一種開發(fā)方式,它使得系統(tǒng)的復(fù)用成為了可能,而同時由于插件開發(fā)框架對于動態(tài)性的支持,使得系統(tǒng)更加的靈活和可擴展。
來看看一個插件開發(fā)框架,應(yīng)該提供些什么東西,作為改變系統(tǒng)架構(gòu)思想的框架,插件框架需要考慮很多方面,如開發(fā)、測試、部署等,總結(jié)下來一個插件框架應(yīng)提供插件的開發(fā)規(guī)范;插件開發(fā)、調(diào)試的IDE;插件的測試方法;插件的部署策略以及插件的管理端。
插件的開發(fā)規(guī)范
作為改變系統(tǒng)架構(gòu)思想的框架,首先就是要提供插件的開發(fā)規(guī)范,要明確的提出怎么樣去開發(fā)一個插件,這是插件框架的核心要素,直接決定了基于此框架是否可開發(fā)出符合需求的插件以及開發(fā)插件的難度。
插件開發(fā)、調(diào)試的IDE
這對于插件開發(fā)的生產(chǎn)力有決定性的影響,在沒有插件開發(fā)、調(diào)試的IDE的情況下,插件的開發(fā)、調(diào)試會較傳統(tǒng)的直接開發(fā)方式變得更加困難。
插件的測試方法
為插件的測試提供指導(dǎo)性的方法,主要就是在單元測試以及集成測試方面。
插件的部署策略
插件如何進行部署這是很關(guān)鍵的,直接影響到整套系統(tǒng)是否可快速的進行部署以及功能、集成測試。
插件的管理端
提供對于系統(tǒng)中插件的管理,如插件的安裝、配置的修改、插件的卸載、插件的啟動、停止、重啟、插件啟動順序的控制等。
同時作為框架,應(yīng)提供一些基礎(chǔ)的插件,為系統(tǒng)的開發(fā)提供方便。