[发明专利]一种增量组合JavaScript程序模块的方法无效
申请号: | 201310472702.5 | 申请日: | 2013-10-12 |
公开(公告)号: | CN103530119A | 公开(公告)日: | 2014-01-22 |
发明(设计)人: | 吴明晖;吕嘉;颜晖;应晶;陈天洲 | 申请(专利权)人: | 浙江大学城市学院 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 杜军 |
地址: | 310015 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 增量 组合 javascript 程序 模块 方法 | ||
1. 一种增量组合JavaScript程序模块的方法,其特征在于包括如下步骤:
步骤1.将JavaScript程序模块分为静态模块M和动态模块D:静态模块M不包含动态语法特性,支持程序静态分析;动态模块D包含动态语法特性,必须在运行时进行检查;
步骤2.使用信赖-保证方法定义静态模块M的模块契约,模块契约包含三个部分:使用假设条件定义模块执行的前提条件;使用保证条件定义模块执行的期望条件;如果静态模块的执行过程插入动态模块,使用依赖条件约束动态模块的执行过程;
步骤3.使用程序证明方法验证静态模块M是否满足其模块契约,验证静态模块M相对于其模型契约满足正确性;所述的模块契约包括:假设条件、保证条件和依赖条件;
步骤4.根据静态模块M的模块契约,在动态模块D中插入运行时检查代码:一部分检查代码负责检查静态模块M的假设条件在依赖条件下是否是稳定的,另一部分检查代码负责检查静态模块M的保证条件在依赖条件下是否是稳定的,然后执行步骤5;
步骤5.运行JavaScript程序的模块,如果执行过程插入动态模块,执行相应的运行时检查代码,如果正确则是正确的模块组合,如果不正确则是错误的模块组合。
2.如权利要求1所述的一种增量组合JavaScript程序模块的方法,其特征在于验证静态模块M相对于其模型契约满足正确性具体如下:
3-1.使用程序证明方法验证静态模块M执行前的程序状态满足模块的假设条件,如果满足继续执行步骤3-2,如果不满足则静态模块M不满足其模块契约,返回步骤2;
3-2. 使用程序证明方法验证静态模块M的执行过程满足模块的依赖条件,如果满足继续执行步骤3-3,如果不满足则静态模块M不满足其模块契约,返回步骤2;
3-3. 使用程序证明方法验证静态模块M执行后的程序状态确保模块的保证条件,如果满足则静态模块M满足其正确性约束,如果不满足则静态模块M不满足其模块契约,返回步骤2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学城市学院,未经浙江大学城市学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310472702.5/1.html,转载请声明来源钻瓜专利网。