zoukankan      html  css  js  c++  java
  • 插件式程序开发及其应用(C#)

    1、  定义

    所谓“插件模型”,指应用程序由一些动态的独立模块构成,每个模块均具有一个或多个服务,并满足一定的插件协议,能够借助主程序实现主程序-插件;插件-插件之间的通讯。

    应用该模型的系统,具有以下特点:

    1)      所有业务功能均是“砖块”,更新及维护简便

    2)      子系统的概念变得模糊,子系统是多个模块的组合

    3)      有效避免功能的重复开发

    4)      可以根据用户需求定制系统,真正的随需而变

    5)      当功能插件达到一定规模时,应用系统的开发将变成二次开发

    6)      实现化整为零的组织结构,每个模块由微小的团队负责,甚至一个人负责

    7)      开发能力要求降低,类似于报表、查询等易变、简单的模块,维护人员即可完成

     

    2、  体系结构组成

           系统结构如下图:

    图一 系统结构示意图

           系统组成元素如下:

    1)      应用程序

    2)      应用程序配置文件

    3)      插件协议

    4)      插件

    5)      共通组件、控件

    6)      远程访问代理

    7)      中间层

    8)      底层数据库

     

    3、  详细说明

    1)        应用程序

    应用程序是用户操作的平台,也是所有业务插件的容器,其本身不会有太多的功能,主要通过读取配置文件来配置整个应用程序;包含以下功能:

    ·主画面

    ·界面配置管理

    ·插件管理

    2)        应用程序配置文件

    包括界面配置和插件配置,采用加密过的XML文件保存配置

    ·界面配置

    ·插件配置

    3)        插件协议(PluginSdk)

    是整个插件模型的运行核心,主要包括用于插件的基类和用于通讯的控制类

    ·插件基类(PluginBase

    ·插件控制类(PluginControl

    4)        插件

    基于插件协议,借助共通插件、控件及远程访问代理和业务层配合实现特定的业务

    ·插件基类派生类

    ·业务功能实现类

    5)        共通组件、控件

    是整个体系的运行基础,也是产品化的基础

    ·权限控制套件

    ·界面控件库

    ·常量库

    ·工具库

    6)        远程访问代理

    也许系统是基于Web服务的,也许系统是基于其它服务的,总之系统的业务实现很大部分放在远程,这个代理就可以让客户端很好的访问远程服务。

    ·远程访问代理类

    7)        中间层

    实现客户端与数据库端的通讯,抛开繁杂的层次步骤,提供简单高效的通讯服务

    ·服务外观层(Web Service

    ·数据访问层(DataAccess

    ·数据库代理(DBHelp/中间件(MiddleWare

    8)        底层数据库

    可以是Oracle,也可以是SqlServer(在实现中间件的前提下),在现有情况下,主要业务还由存储过程来实现。

    原文链接:插件式程序开发及其应用(C#) - 3(整理后的完善版本)

  • 相关阅读:
    WCF 第十三章 可编程站点 为站点创建操作
    WCF 第十三章 可编程站点 所有都与URI相关
    WCF 第十二章 对等网 使用自定义绑定实现消息定向
    WCF 第十三章 可编程站点 使用WebOperationContext
    Using App.Config for user defined runtime parameters
    WCF 第十三章 可编程站点
    WCF 第十三章 可编程站点 使用AJAX和JSON进行网页编程
    WCF 第十二章 总结
    WCF 第十三章 可编程站点 使用WebGet和WebInvoke
    WCF 第十三章 可编程站点 URI和UriTemplates
  • 原文地址:https://www.cnblogs.com/rainbow70626/p/4728677.html
Copyright © 2011-2022 走看看