反射机制下插件系统软件的设计和应用.docx

上传人:rrsccc 文档编号:8921387 上传时间:2021-01-25 格式:DOCX 页数:3 大小:14.74KB
返回 下载 相关 举报
反射机制下插件系统软件的设计和应用.docx_第1页
第1页 / 共3页
反射机制下插件系统软件的设计和应用.docx_第2页
第2页 / 共3页
反射机制下插件系统软件的设计和应用.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《反射机制下插件系统软件的设计和应用.docx》由会员分享,可在线阅读,更多相关《反射机制下插件系统软件的设计和应用.docx(3页珍藏版)》请在三一文库上搜索。

1、反射机制下插件系统软件的设计和应用摘 要: 为了缩短软件开发周期并提升软件扩展性,提出基于反射机制的插件系统软件设计理念。该系统所配置的独立软件,无需编写源程序,从而达到定制、修改、添加软件功能。在反射机制下设计插件系统软件借助观察者模式对插件间的数据关系实施解耦,并借助XML描述与表达插件关系进行配置,这一软件设计思想能提升软件复用性、扩展性。关键词: 反射机制; 插件系统软件; 软件设计; 软件开发中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2016)12?0130?02Abstract: In order to shorten the softwar

2、e development cycle and improve extensibility of software, some software design ideas of plug?in system based on the reflection mechanism is put forward. The independent software configured in the system doesnt need to write the source program, so as to achieve customization, modification, software

3、addition functions. The plug?in system software is designed under the reflection mechanism to implement decoupling of the data relationship between the plug?ins with the help of the observer pattern. XML is used to describe and express the plug?in relationship for configuration. The software design

4、idea can improve the software reusability and extensibility.Keywords: reflection mechanism; plug?in system software; software design; software development随着计算机技术的开发和广泛应用,多数复杂的系统的开发层出不穷,系统的复杂性为日后的维护、管理工作带来不便。任何一种软件的开发,不管研发者开发前是否详细调查用户需求,软件开发完成后,使用过程中用户需求出现变化或部分功能有待改进,传统繁琐、低效率的流程无法满足需要。为了设计维护性能强、容易扩展的

5、软件,最佳的方式就是使用插件技术,文中尝试把基于NET反射机制引入插件系统软件开发中,软件参数化程度升高,实现完善配置管理的目的。1 简述反射技术及插件技术的概念1.1 反射技术反射概念最早于1982年提出,是指程序能够访问、检测、修改其自身状态或行为的一种能力【1】。反射概念的提出快速引发计算机领域有关应用反射性的研究。通常反射系统不单单满足开放性条件,也要满足原因连接。原因连接就是反射系统从发生描述改变能够及时反映至系统底层的时间情况。在NET内,反射机制可以建立灵活代码,该代码进行运行过程中进行装配,不需要再组建实施源代码链接。反射机制允许在编写及执行过程中,将接入装载至可执行的程序内部

6、信息,这种反射机制称为创建灵活应用的主要工具【2】。1.2 插件技术插件技术本身也是构建技术,如果某个软件工程项目较大、要求过紧,需要多个人员、单位在不同的时间下进行设计、开发软件。插件技术实现最终集成时,必须把部件组装而无需实施编译及连接,操作完成后直接组装至原软件平台方可使用。插件技术是遵循某种规范的应用程度接口对程序进行编写操作。目前,多数软件设有插件,例如:IE中安装相应的插件后,Web浏览器可直接使用插件程序对某种特定类型的文件进行处理。2 基于反射机制下设计基础框架插件是近几年比较常见的技术,插件结构有利于编写最佳的扩充和定制功能程序。本文提出插件/平台软件设计就是把某个有待开发目

7、标软件划分为主框架(平台)和补充模块(插件)。主框架由内核、插件管理等部分组合而成。通过内核申请服务对整个程序的工作运行状态实现驱动,由于插件技术满足系统要求的各项服务,服务状态及形式展示在不同插件中【3】。在主框架中,插件管理层起着重要的连带作用,该管理层用以合理调配相应的接口,为内核提供一系列的服务功能。同时,内核能够有效完成推进时间、触发事件及分发消息等各项任务,其关系如图1所示。在插件系统软件设计时,其平台选用软件基础服务,最后对扩展点展开分析,之后封装形成独立的插件,根据以上要求,软件设计框架如图2所示。2.1 设计插件系统设计插件系统过程中,抽象提取的插件必须满足独立性强、可靠性好

8、、连接方便等特点,配合简要清晰地解释说明,方便日后合理的检测和应用。一般情况下,插件采用接口的形式对其功能进行公布,达到合理内部封装的效果【4】。插件严格遵循统一的命名规则及设定的接口标准。深入研究多种插件系统与对象的关系,本文提出借助数据交互接口、树状关系接口等相关插件接口。IEntityPlug是系统插件的直接继承接口,其具有注册、初始化、更新配置等插件等功能。2.2 NET反射机制下插件运行过程NET反射机制本身就是一个分析程序元数据表的过程,便于掌握程序集的类型及其主要成员。通过反射机制能获取程序集中定义的不同信息,允许程序正常运行状态下建立部分类型对象,并及时调用以上类型、成员的操作

9、【5】。通常将插件设置在特定目录内,例如:bin/debug/plugin,在plugin目录下存储插件,也能把插件信息填写至XML配置文件内。插件系统运行时序见图3。程序正常运行时,窗体由配置文件内读取保存插件名称及其加载的DLL路径信息,动态形成各类菜单、命令。开启程序后,通过ObjectManafer对XML配置文件进行读取。反射机制建立插件试题,实现插件注册及初始化操作。2.2.1 插件实现具体步骤插件实现必须遵循封装变化点、动态加载程序集的原则,插件系统软件正常运行时,依据配置文件制定的各项参数,动态加载合理的程序集并调用相应的方法,以此满足用户功能需求。如果用户需要增设新的功能,只

10、需设置新的程序集并更改配置文件即可完成。2.2.2 封装变化点实现方式在平台上定义的插件包括Tool,Command两种形式,各类插件具体的实现功能有所差异,均需设置统一的Icommand或TTOOL接口,通过设置这样的接口,宿主程序无需重视插件的具体实现情况,重点关注插件有没有实现该接口,由接口宿主程序与插件实现交互效果。2.3 配置约定配置文件作为设计的软件框架的重要组成部分,配置文件的内存储系统包含原有的初始化信息,主要有对象属性值、对象关系等。因不同对象之间的关系过于复杂,在一定程度上为配置和管理工作带来极大的困难,配置合理的对象属性值便于系统进行管理,提高系统的运行效率【6】。本文选

11、定XML文件作为软件参数配置软件,XML便于理解、解析,实现XML表达对象之前关系的优势。假设某个工程为根,与该工程有关的信号均保存在合理的属性之内。本文系统中的每个插件均是XML的一个节点,文中将其当做插件节点。把插件对象设置属性值作为该插件的各个子节点,插件能够准确表达该插件的名称、工作状态等各类信息,也可增设部分特有的属性值。2.4 对象逻辑关系的表达配置文件第一步解决的问题就是不同对象的相关性,对象逻辑的象树关系代表配置文件内父与子的关系。通常情况下,文中所说的组合对象、调用关系等内容,若插件节点出现这类关系,配置表示为空。每个对象在传输数据和信息的过程中,在XML配置上并列增设另外的

12、节点,其中某一个订购关系表示为。该节点主要组成部分为:数据发布者、发布者名称、类型、数据订购者。3 结 语总之,基于反射机制设计插件系统软件中,软件实现的功能均在插件中实现,不同插件处于相对独立的状态,因此,修改某一个插件并不会影响整个系统或其他插件正常运行状态,能有效减少其耦合性。文中设计的插件系统软件,已经广泛应用到实际工作中,在一定程度上提升开发效率和灵活性。参考文献【1】 高峰.插件式护士工作站设计与实践.中国数字医学,2012(7):114?115.【2】 汪峰坤,曹新彩.基于反射的低耦合轻量级插件框架的研究和设计.硅谷,2012,11(5):54?55.【3】 陈海燕,朱宇来,林阳,等.利用反射技术实现程序结构优化设计.科技资讯,2014,32(28):21.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1