[发明专利]一种动态切换第三方程序库的实现方法及实现装置有效
申请号: | 201710283541.3 | 申请日: | 2017-04-26 |
公开(公告)号: | CN108804087B | 公开(公告)日: | 2022-06-21 |
发明(设计)人: | 张磊;陈少杰;张文明 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 沈林华 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 动态 切换 第三 程序库 实现 方法 装置 | ||
本发明公开了一种动态切换第三方程序库的实现方法及实现装置,涉及软件开发技术领域。该实现方法包括:在业务逻辑层与基础框架层之间增设中间屏蔽层,并定义通用访问接口;将业务逻辑层设置为只能通过调用通用访问接口来实现功能;为基础框架层中的每个第三方程序库创建适配容器,该适配容器用于提供通用访问接口的具体实现方法;当进行初始化时,将指定的第三方程序库的适配容器传入到初始化的方法中;当需要切换至另一个第三方程序库时,将需要切换的另一个第三方程序库的适配容器重新传入到初始化的方法中。本发明能够简单、高效的实现第三方程序库的动态切换,且上层无感知,极大的降低了代码的入侵性,避免了程序bug的引入。
技术领域
本发明涉及软件开发技术领域,具体来讲是一种动态切换第三方程序库的实现方法及实现装置。
背景技术
在软件开发的过程中,开发人员通常会使用接入第三方程序库来进行开发,因为第三方程序库能够极大的提高程序的开发效率。但是当开发人员使用了某个第三方程序库后,该第三方程序库可能由于种种原因而停止维护。当第三方程序库停止维护后,开发人员就不得不对该第三方程序库进行更换。
常规的软件设计架构通常划分成两层:第一层是业务逻辑层;第二层是基础框架层。其中,第二层基础框架层是提供基础的功能模块,而第一层业务逻辑层则是严格依赖基础框架层的基础功能模块的业务。当第二层的功能模块变更的时候必然会引起第一层业务逻辑层相关的变更。
由于软件的基础框架层中大量使用到了第三方程序库的代码,通常情况下当开发人员进行第三方程序库的更换时,就需要将业务逻辑层中所有使用了第三方程序库的代码逻辑进行调整。这样就会导致开发人员每次更换一个第三方程序库的时候就需要调整大量的业务逻辑层中的业务代码,代码的入侵性就会大幅度提升,这样开发人员替换第三方程序库的时候就非常容易引入程序bug(漏洞),使得整个程序库的替换过程变得异常复杂且准确率、效率低下。
发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种动态切换第三方程序库的实现方法及实现装置,能够简单、高效的实现第三方程序库的动态切换(更换),且整个切换(更换)操作不会引起业务逻辑层中业务逻辑代码的变更,即上层无感知,极大的降低了代码的入侵性,避免了程序bug的引入。
为达到以上目的,本发明采取的技术方案是:提供一种动态切换第三方程序库的实现方法,该方法包括以下步骤:
S1、在业务逻辑层与基础框架层之间增设中间屏蔽层;在中间屏蔽层中定义至少一个通用访问接口,每个通用访问接口的方法对应系统所需实现的一个功能;
S2、将业务逻辑层设置为:当需要实现系统的某个功能时,通过调用中间屏蔽层中定义的对应的通用访问接口来实现相应功能;
S3、为基础框架层中的每个不同的第三方程序库创建适配容器,所述适配容器用于通过调用第三方程序库的功能逻辑来完成中间屏蔽层中定义的通用访问接口的方法;
S4、当系统进行初始化时,将指定的一个第三方程序库的适配容器的实例作为参数传入到初始化的方法中,使得业务逻辑层调用中间屏蔽层中定义的通用访问接口实现某个功能时,将自动调用当前适配容器中的功能逻辑来完成;
S5、当需要切换至另一个第三方程序库时,将需要切换的第三方程序库的适配容器的实例作为参数重新传入到初始化的方法中,使得业务逻辑层调用中间屏蔽层中定义的通用访问接口实现某个功能时,将自动调用新的适配容器中的功能逻辑来完成。
在上述技术方案的基础上,步骤S3具体包括以下操作:
S301、为基础框架层中的每个不同的第三方程序库创建一个适配容器类,并使该适配容器类继承中间屏蔽层中定义的所有通用访问接口;
S302、在创建的适配容器类中复写中间屏蔽层中定义的所有通用访问接口的方法;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710283541.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种城镇地质灾害数字化管理系统
- 下一篇:协议处理方法和装置