- OSGi原理與最佳實踐
- 林昊 曾憲杰
- 500字
- 2018-12-29 19:32:23
第1章 OSGi簡介
1.1 夢想中“即插即用”的系統
第一次聽到插件應該是當初用WinAMP播放器的時候,記得當時WinAMP有很多的插件,可以方便地下載、安裝、使用。在實際的工作中,有過引入COM組件技術使系統模塊化的經歷,后來自己也做過一個產品用的插件管理器(實在不能說是插件平臺),實現了基本的插件遠程下載、安裝、啟動、停止等管理工作,也有插件間的消息通知。但是這個管理器更像是對模塊的動態管理,并且在實現上也發現它遠沒有最初設想的簡單。還有一個問題是,這個插件管理器是用在公司的第一款產品上,目標是做到公司內通用,但是最終發現其實并不是那么通用,并且這個管理器也有些相關平臺。當時就在想,有沒有一個通用的框架,實現一個插件體系結構,使用者遵循規范,開發自己的插件,使用已有的插件,而插件又能控制對外暴露的內容,在運行時,可以動態地安裝、啟動、停止、卸載插件,每個插件提供一個或多個服務,其他的插件只是根據接口來獲取服務提供者,而完全不知道提供者是誰。如果有了這樣的規范和框架,我們就可以用已有的積木搭出各種造型,也能夠提供積木給自己、給別人來使用。所以,我們很希望能夠有一個穩定的平臺,管理規范的插件,插件可以熱插拔,并且在運行期能夠改變行為。