插件系统的设计

插件系统就是指 当宿主程序开发好以后,可以开发一些符合自定义规范的程序(插件),来扩充宿主程序的功能。

插件系统的设计注意点就是
1. 宿主程序如何知道插件的存在
2. 插件如何从宿主程序获得必需要的内容
3. 插件之间如何交换信息
4. 如何对插件进行扩充(也就是说每一个插件都可以作为一个宿主程序)
5. 考虑插件升级,等一些其它因素
如果前四点都能做到的话,此插件系统的就会具有较强的适应能力了,是不是还有什么没有考虑到:(。

基于此,插件系统的设计原则就是
1. 宿主程序就是插件系统的核心,不含任何与业务相关的内容,不含任何界面,只负责处理自定义的一套插件规范
    由于宿主程序只处理了自定义规范,这样,2, 3 设计注意点则合并成3注意点,2设计注意点不存在了。
2. 插件之间交换信息,借鉴Service模型,每个插件都是提供一个(或多个)服务,并将服务注册到Host中,当需要其它插件提供的服务时,则从Host中去请求。
3. 每一个需要扩充的插件都引用宿主程序(待定???)

至此,插件系统的设计变为自定义插件规范解释程序(宿主程序)的设计。
1. 插件规范的定义  是一个难点

如何定义规范?

posted on 2004-03-31 13:38  muddle  阅读(7908)  评论(37编辑  收藏  举报

导航