zoukankan      html  css  js  c++  java
  • 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. 微内核插件平台设计

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

    · 插件加载器,负责加载插件。

    · 插件版本控制组件,负责询问版本服务器获取加载的版本。

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

    客户端的简要启动运行流程如下。

    · 获取版本:内核启动后,询问版本控制服务器,获取需要加载的版本。

    · 下载相应版本的XML配置。

    · 加载器解析XML配置。

    · 开始第一个插件加载逻辑。

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

    · 加载第一个插件。

    · 继续加载子节点插件。

    · 微内核懒加载架构与Web架构的比较如表1所示。

    5. 参考

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

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

  • 相关阅读:
    【Golang基础总结】数组和切片的比较
    如何转载别人的文章
    C语言字节对齐问题详解
    幷查集拓展
    贪心
    dfs
    Trie
    哈夫曼树
    bfs
    并查集
  • 原文地址:https://www.cnblogs.com/attilax/p/5963948.html
Copyright © 2011-2022 走看看