[发明专利]基于重构技术实现开放终端应用数据与功能的方法有效
申请号: | 201610772875.2 | 申请日: | 2016-08-30 |
公开(公告)号: | CN107479866B | 公开(公告)日: | 2020-11-06 |
发明(设计)人: | 张颖;蔡华谦;黄罡;姚伟 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F8/36 | 分类号: | G06F8/36;G06F8/74;G06F8/72;G06F8/30 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 邱晓锋 |
地址: | 100871 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 技术 实现 开放 终端 应用 数据 功能 方法 | ||
本发明公开了一种基于重构技术实现开放终端应用数据与功能的方法。其核心思想是通过修改应用的运行时环境,获取用户在使用应用相应功能、数据时的应用运行时控制流信息,并对原有控制流进行重构。本方法通过程序化分析运行时控制流和应用静态代码,剥离与应用的功能、数据无关的子控制流,保留与应用功能、数据直接相关的一组子控制流及其上下文环境。在特定的上下文环境下,重现这组子控制流,从而实现应用相应功能、获取应用数据。本发明可用于开放基于Java、C#和JavaScript实现的不同类型的终端应用中的功能与数据。对于需要开放应用数据,同时却面临着开发文档缺失、开发人员缺位的应用所有者,本发明具有十分重要的意义。
技术领域
本发明是一种利用程序分析与重构技术实现将现有终端应用的数据和功能转化为可由外部调用的应用编程接口(Application Programming Interface,API),从而实现将终端应用数据与功能开放的方法,属于软件技术领域,适用于软件维护。
背景技术
应用编程接口经济是新兴的推动力量,能够帮助企业领导者实现企业转型,构建新的生态系统,实现核心资产货币化,以应对当今数字转型过程中的市场挑战。终端应用中的数据和功能潜藏了巨大的价值,亟需进一步开发,以实现其潜在价值。然而,开放应用的数据和功能需要开发人员对原系统进行手工的修改与重构。对于大量的企业和政府单位,他们往往是通过第三方开发团队定制应用,如企业的办公应用、政府的智慧城市应用等。这些企业、政府所拥有的应用虽然有着非常重要的数据和功能,却因为这些应用的所有者往往缺少相应的开发团队,导致他们在开放应用的数据和功能时需要重新联系原有的第三方开发团队,会遇到开发成本高、开发周期长等问题。
综上所述,需要一种支持将现有终端应用的数据和功能转换为应用编程接口的方法。它可以帮助应用所有者在开发文档缺失、开发人员缺位的情况下,快速地将现有应用的数据和功能对外开放。应用所有者利用本发明提出的一种程序控制流捕捉与重构方法,可以高效地复用原有应用代码,从而实现快速将现有应用的数据与功能生成相应的应用编程接口。
发明内容
本发明的目的是将现有应用的数据和功能对外以接口的方式提供服务。其核心思想是通过修改应用的运行时环境,获取用户在使用应用相应功能、数据时的应用运行时控制流信息,并对原有控制流进行重构。本方法通过程序化分析运行时控制流和应用静态代码,剥离与应用的功能、数据无关的子控制流,例如,实现用户接口(User Interface,UI)的子控制流;保留与应用功能、数据直接相关的一组子控制流及其上下文环境。在特定的上下文环境下,重现这组子控制流,即可实现应用相应功能、获取应用数据。本方法通过应用运行环境级别的监控,实现获取用户在使用应用特定功能、获取应用特定数据时的运行时的控制流;通过结合控制流分析与静态代码分析,剥离与应用的功能、数据无关的子控制流提升生成的对外接口的效率;通过在应用运行环境级别重现特定的上下文环境、复用原应用代码以保证应用功能、获取应用数据的正确性。
本发明采用的技术方案如下:
一种基于重构技术实现开放终端应用数据与功能的方法,其步骤包括:
1)由应用所有者指定终端应用中欲对外提供接口的数据与功能;
2)利用应用运行环境级别的控制流获取方法,获取在使用步骤1)中指定的功能、数据的运行时的一组控制流及其运行时上下文;
3)对步骤2)获取的控制流及运行时上下文进行程序化分析,生成控制流中每个函数的上下文依赖及这组控制流之间的唤醒关系;
4)通过步骤3)获取的分析结果,重构步骤2)中获取的应用的控制流,生成一组外部可调用的应用编程接口(Application Programming Interface,API);
5)通过调用步骤4)中生成的API可使用应用的原有功能、数据,实现开放应用的功能、数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610772875.2/2.html,转载请声明来源钻瓜专利网。