The invention relates to a method for developing a desktop client plug-in tool, especially relates to a desktop plug-in framework and implementation method based on the set of tools, developers follow the plug-in standard in this mode, the basic development environment to provide two times the development of Library Based on, can quickly expand the desired desktop plug-in tools, and released for general cloud service. The invention of a desktop plug-in framework based on the set of tools, including the host program module, third party interface library module, plug-in engine module and plug-in assembly module, the invention adopts the framework and plug-in development mode with the development of simple, low coupling, high efficiency, Gao Fu, high universality, easy migration, easy polymerization characteristics, developed the tool of the invention has any plug-in longitudinal health, free polymerization, migration convenient, easy to reconstruct features, fully meet the new demand for software development under the cloud computing software developers.
【技术实现步骤摘要】
一种基于工具集的桌面端插件框架及实现方法
本专利技术涉及桌面客户端的工具插件的开发方法,特别是涉及一种基于工具集的桌面端插件框架及实现方法,开发者在该模式下遵循插件开发规范,基于开发环境提供的基础二次开发库,即可快速扩展所需桌面端工具插件,并发布为通用的云服务。
技术介绍
云计算是虚拟化、效用计算、基础设施即服务、平台即服务、软件即服务等概念混合演进及跃升的结果,云计算时代是必然趋势,“云服务”作为一种新兴的共享基础架构的方法已经越来越广泛的应用于信息领域。云计算技术将连接到互联网的PC、数据库、服务器、甚至包括昂贵的科学仪器连接到一起,并将空闲计算能力、存储空间等利用起来。用户通过互联网访问云计算平台获得需要的信息服务,而不必考虑提供这些信息服务的具体的硬件设施、操作系统等支持环境,从而实现了广泛的多源异构信息资源的充分共享。随着云计算理念的提出及深化,软件应用终端向着微型化、移动化方向发展,同时服务器端向着基于跨平台的、面向服务的产品体系及架构并支持小型机、大型机、集群等应用的巨型化方向发展。传统的软件开发模式偏向于定制开发,功能设计与应用对象一一对应。开发的应用只为满足某一特定对象的使用,不具备通用性,耦合性很强。功能之间并未相互独立,代码冗余,复用率也不高。对当新应用与旧应用有一定的相似度时,最常采用的方法就是基于已有应用进行修改,或者直接将代码拷贝、调试、修改,由此带来了应用工程越来越大、Bug越来越多、软件开发效率极度低下,开发出的软件往往存在很多不可预见的问题。因此,在传统软件开发应用中,体现了传统开发模式下存在开发复杂、耦合性强、复用性差、 ...
【技术保护点】
一种基于工具集的桌面端插件框架,其不同之处在于:其包括以下模块:宿主程序模块:宿主程序是整个插件开发框架运行的入口,它通过插件引擎加载插件对象,并将插件对象以用户界面(UI)的形式来展示,以及负责协调这些插件对象与界面控件间的交互;第三方界面库模块(Dxp):第三方界面库提供界面控件对象,被宿主程序调用来实现与插件对象间的交互;插件引擎模块:插件引擎负责解析插件程序集,提取插件程序集中的插件类型信息,并提交给宿主程序生成对应的界面对象;插件引擎提供一种通讯契约,即插件接口;插件程序集如果实现了上述插件接口,就能被插件引擎认可为合格的插件;插件引擎提供一个插件容器(PluginContainer),负责管理插件的加载、卸载状态控制;插件引擎提供一个运行框架(Application),负责管理插件引擎运行状态、与插件程序集间的交互以及与地图数据(MapDocument)交互,所述插件容器(PluginContainer)通过从插件程序集(Plugin….dll)中获取插件对象,分别装入对应的插件容器(PluginContainer)中,实现插件的加载;从插件容器(PluginContain ...
【技术特征摘要】
1.一种基于工具集的桌面端插件框架,其不同之处在于:其包括以下模块:宿主程序模块:宿主程序是整个插件开发框架运行的入口,它通过插件引擎加载插件对象,并将插件对象以用户界面(UI)的形式来展示,以及负责协调这些插件对象与界面控件间的交互;第三方界面库模块(Dxp):第三方界面库提供界面控件对象,被宿主程序调用来实现与插件对象间的交互;插件引擎模块:插件引擎负责解析插件程序集,提取插件程序集中的插件类型信息,并提交给宿主程序生成对应的界面对象;插件引擎提供一种通讯契约,即插件接口;插件程序集如果实现了上述插件接口,就能被插件引擎认可为合格的插件;插件引擎提供一个插件容器(PluginContainer),负责管理插件的加载、卸载状态控制;插件引擎提供一个运行框架(Application),负责管理插件引擎运行状态、与插件程序集间的交互以及与地图数据(MapDocument)交互,所述插件容器(PluginContainer)通过从插件程序集(Plugin….dll)中获取插件对象,分别装入对应的插件容器(PluginContainer)中,实现插件的加载;从插件容器(PluginContainer)中删除插件对象,实现插件的卸载;插件程序集模块:实现了插件引擎定义的插件契约的应用程序集,是基于.NET框架的应用功能的主体实现。2.根据权利要求1所述的一种基于工具集的桌面端插件框架,其中所述宿主程序模块负责了界面的解析、加载、运行、保存过程,其启动过程必须满足用户的配置性和嵌入性需求,宿主程序的启动、关闭过程大概分为如下几个步骤:步骤301:加载内部Application.xml文件,根据XML初始化系统属性,并且加载欢迎屏(如果存在欢迎屏则加载,否则不加载);步骤302:判断是否存在配置文件(exe.config文件),如果不存在,则将Application.xml的内容赋值给新文档RealDoc,否则将配置文件exe.config的内容赋值给新文档RealDoc;步骤303:根据新文档来修订系统属性、创建插件对象、创建界面、发送事件;步骤304:宿主程序启动完成(如果前面加载了欢迎屏,关...
【专利技术属性】
技术研发人员:吴信才,万波,吴亮,郭明强,黄波,叶亚琴,余国宏,尹培培,
申请(专利权)人:武汉中地数码科技有限公司,北京中地时空数码科技有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。