欢迎来到天天文库
浏览记录
ID:21436631
大小:52.50 KB
页数:5页
时间:2018-10-22
《浅析插件技术在软件中应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、浅析插件技术在软件中应用:本人就插件技术的原理,阐释了插件在软件中的实现方法,进而提出了插件技术在计算机系统中的应用。 关键词:软件;插件;接口;插件技术;应用 :TP319:A:1007-9599(2011)20-0000-01 Plug-inTechnologyApplicationintheSoftited,Beijing100621,China) Abstract:Iplug-intechnologyontheprincipleofinterpretationoftheplug-insoftple
2、mentations,andthenmadeaplug-intechnologyintheputersystemapplications. Keywords:Software;Plug;Interface;Plug-intechnology;Application 一、插件技术设计原理 (一)插件具有动态链接库 所谓插件动态链接库就是一种具有特定功能在软件运行中可以执行的软件模块,由于自身的局限性,本身不能独立运行在脱离相应的软件时,但是它可以输出已定义的函数,通过其他能独立运行的程序可以调用自身的内部功
3、能。动态链接库有两种调用方式即为静态调用方式和动态调用方式。 (二)插件在软件中的接口 在开发支持相应软件插件功能的应用程序是首要任务是解决:插件如何在其宿主程序中能够正确地相互通信和转换。因此、为了能使插件在相对应的宿主程序之间正常德相互通信和转换,在开发软件的插件前应该先制订一套相互通信的标准,这套事先制订好的通信标准就是插件与软件的接口,他们之间只有通过接口才能相互通信。在软件开发过程中,接口只是一中调用形式而不是软件功能是实现。从实质上讲,接口就是软件模块的一种调用规范,从开发支持插件功能的编制程序上
4、讲,接口制定通常是有软件一主程序的开发者开发编制的。接口功能一般通过宿主程序实现,因为插件功能的实现需要调用宿主程序的某些功能。因此可以说,宿主程序与插件之间的信息流是双向的。接口的调用规范与其功能实现相互分离有存在一个突出的优点:虽然不同的插件开发者对同一个接口的实现途径不同,但是宿主程序在调用这些插件时所有调用方式是完全一样的。另外不同的插件也可以用同一个接口来调用宿主程序的功能。 (三)插件程序结构及运行机制 在动态链接库中实现插件接口,在宿主程序中运用显式链接方式动态加载插件。在宿主程序中,插件的安装
5、和删除通常有插件在宿主程序的管理部分控制,把安装插件的所有信息保存到宿主程序中的一个适当的地方。通常是保存到注册表或者是一些其他的配置文件中。每当宿主程序启动时,宿主程序会自动的读取插件的配置信息并且把插件模块加载到宿主程序,然后获得插件的输出函数或输出类的指针并加以保存,如果需要的话,可以向宿主程序添加一些快捷工具如菜单、工具条按钮等接口元素,以便方便调用。若使用插件功能是只需在宿主程序中点击与插件相关联的接口元素时,就可以完成调用插件中的函数,通过调用插件中的函数可以使用宿主程序中已保存的插件信息进而实现插件
6、功能。 二、如何实现插件的可行性方案 目前对于软件中的插件的实现,主要有动态链接库(DLL)、组件两种方案,但普遍运用在系统中的是动态链接库(DLL)方案,在动态链接库(DLL)中,集中实现插件,用户只需在Windows系统下编制一些DLL数据,然后再花一些时间熟练掌握软件相关插件的编程规则以及调用规则,就可对插件进行设计和开发,从而实现插件所具有的特种功能。另外一种便是,是一种组件的对象模型。既提供了组件与宿主程序之间进行交互的规范,也为实现相互交互提供了良好的环境。接口是对象与Windows系统之间的交互
7、通道,但调用插件的函数在同类插件间是基本相同的,因而,可以编写插件来编写于软件向匹配的插件。使用技术在编写插件中有着一个很大的优势,那就是它更易于使插件与系统间功能的进行交互。但主要的问题是由于技术及原理的复杂性,从而使开发者很难用该项技术编写插件来解决实际问题。 三、插件在地震系统中的应用 (一)地震系统对插件基本需求 当今社会,各国对地震的关注越来越大,因而地震处理系统也越来越精确,对插件的需求也越来越大。地震处理系统主要包括数据的输入、输出和数据处理3个部分。然而在在数据过程中,宿主程序首先将插件所需
8、要数据和相关信息通过接口输送到插件程序中,然后任务全部由插件来完成,最好,插件将处理好的数据通过接口输送个宿主程序。 (二)地震系统中主程序和插件的工作过程 根据以上对对插件实现的机制的分析,可以吧地震处理系统分为主程序和插件。主程序负责管理数据和加载功能模块,建立一个模拟实际情况的处理流程;插件功能由动态链接库来实现。因此,通过主程序对地震信息的管理和加载,来实现插
此文档下载收益归作者所有