笔记与流年

2006/10/08

基于PicoContainer的插件体系

PicoContainer是支持IoC的轻量级容器。它可以把原本复杂的组件间的组合关系委托给容器来管理,从而降低了软件开发的复杂程度。我们完全可以利用PicoContainer的组件装配功能,来开发一个轻量级的插件体系。我在大角星软件的试验中就做了这种尝试。

一个插件框架,其主程序的生命周期,应该包括如下几个阶段:
  • 加载阶段:加载共享类库,根据依赖关系依次加载插件;
  • 注册阶段:注册插件的扩展点和扩展;
  • 装配阶段:把插件装配起来;
  • 运行阶段:运行各个插件。
由于有了PicoContainer的支持,注册、装配与运行都变得极为简单,主要的工作在加载阶段。参考jEdit的加载机制,我开发了自己的插件加载程序。

目前,大角星软件的开发处于停滞状态,但我不会放弃这个插件体系,我还会继续提炼、精简这个框架。

标签: , , , , ,

1 条评论:

发表评论

订阅 博文评论 [Atom]



<< 主页