首页 > 代码库 > atitit.插件体系设计总结o73.doc

atitit.插件体系设计总结o73.doc

1. 两大类型:微内核(级联树形结构)与巨内核(管理容器,并联结构)。 1

2. 通用插件接口 1

3. 插件的绑定and 初始化 2

4. 微内核插件平台设计 2

5. 參考 2

 

 

1. 两大类型:微内核(级联树形结构)与巨内核(管理容器,并联结构)。

 

插件系统主要有两大类型:微内核(级联树形结构)与巨内核(管理容器。并联结构)。

 

当中,微内核的主要特点是拥有父插件、子插件,而界面呈现是由扩 展点的父插件来决定,插件交互也是通过国展店实现的。此外,插件之间的赖关系由配置文件制定。其延迟载入也是由配置文件里的具体描写叙述来定义,仅仅有在调用时 才会被载入。

相对来说巨内核的界面呈现是由执行框架来决定的,在其设计之初就已经确定好未来插件的显示方式。而插件之间也是由巨内核统一进行管理的,其依赖关系一般没有管理。巨内核的典型样例就是眼下非常火的SNS社区,如校内网、Facebook、开心网等等。

 

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax

2. 通用插件接口

 

另外,值得补充说明一下的是插件接口。插件接口通常有两种:

通用插件接口:这一类插件接口是通用的,你无法从接口函数看出这个插件的功能。它的接口函数通常有这些函数:

init : 用于初始化插件,通常在插件被载入时调用。

deinit:用于反初始化插件,通常在插件被卸载时调用。

run:让插件起动。

stop:让插件停止。

至于插件要完毕什么功能。要插到哪里,在init函数里决定,它调用公共函数库里的函数把自己注冊到框架中某个位置。

3. 插件的绑定and 初始化

增加插件的方式通常採用配置信息来实现

 

两个方式,一个是插件黑头Init,,要是单个的插件这个法好...

B..使用ioc 容器来绑定...切割..

Html, js这个法好..

 

4. 微内核插件平台设计

· 个微内核插件平台,仅仅有一个插件载入器、插件版本号控制组件、资源下载组件。

· 插件载入器。负责载入插件。

· 插件版本号控制组件,负责询问版本号server获取载入的版本号。

· 资源下载组件,负责下载插件资源。

client的简要启动执行流程例如以下。

· 获取版本号:内核启动后。询问版本号控制server,获取须要载入的版本号。

· 下载对应版本号的XML配置。

· 载入器解析XML配置。

· 開始第一个插件载入逻辑。

· 下载第一个插件的资源。

· 载入第一个插件。

· 继续载入子节点插件。

· 微内核懒载入架构与Web架构的比較如表1所看到的。

 

5. 參考

插件式设计的架构模型与实例 - Linux mobile development - 博客频道 - CSDN.NET.htm

腾讯client架构 -- client的插件化 梦中梦的日志 网易博客.htm

atitit.插件体系设计总结o73.doc