[发明专利]一种代码压缩方法及系统有效
申请号: | 201410709985.5 | 申请日: | 2014-11-28 |
公开(公告)号: | CN104331316B | 公开(公告)日: | 2017-11-24 |
发明(设计)人: | 李宸;赵佳国;范建刚;王浩远;金鑫 | 申请(专利权)人: | 中国农业银行股份有限公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 王宝筠 |
地址: | 100005 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 压缩 方法 系统 | ||
技术领域
本发明涉及软件开发技术领域,特别涉及一种代码压缩方法及系统。
背景技术
在软件应用开发中,为了能够让代码文件更小,执行效率更高,并且出于保护代码的目的,一般会对进入实际使用中的代码进行压缩。
在现有的javascript压缩方案中,通常开发与压缩分开,也就是说,在基本开发完成后,通过一次性将代码进行压缩的方式得到压缩代码,再经过多次反复的进行源代码与压缩代码的效果对比之后,以得到压缩成功的压缩代码,将压缩包更新到实际的应用系统中。
其中,在现有的压缩方案中,将压缩代码和开发代码完全隔开,且通常是多种功能或类型的代码模块合并在一个代码文件中,因此,在测试或效果比对出现问题时无法准确定位到出现问题的代码模块,需要依次对每个模块进行检测,由此,明显降低代码开发效率。
发明内容
本发明的目的在于,提供一种代码压缩方法及系统,用以解决现有技术中的代码压缩方案,将压缩代码和开发代码完全隔开,且通常是多种功能或类型的代码模块合并在一个代码文件中,在测试或效果比对出现问题时无法准确定位到出现问题的代码模块,需要依次对每个模块进行检测,由此,明显降低代码开发效率的技术问题。
本发明提供了一种代码压缩方法,应用于预先构建完成的压缩环境中,所述方法包括:
依据预设的压缩规则,对开发代码文件中的开发代码进行分包,得到多个原始代码包,每个所述原始代码包分别对应其包配置文件,所述包配置文件中包含有其所属原始代码包的压缩方式;
为引用每个所述原始代码包的代码文件设置开关变量;
依据所述压缩规则确定压缩配置文件,所述压缩配置文件中包含有压缩属性;
执行所述压缩配置文件,以使得分别以每个所述包配置文件中的压缩方式对其对应的原始代码包进行压缩处理,得到多个压缩代码包,所述压缩代码包组成压缩代码文件,所述压缩代码文件中压缩代码包的压缩结构与所述压缩属性相对应,所述压缩代码文件中每个压缩代码包与其对应原始代码包的开关变量相关联。
上述方法,优选的,所述压缩规则包括:按照预设的代码功能类别对代码进行分包;
相应的,所述依据预设的压缩规则,对开发代码文件中的开发代码进行分包,得到多个原始代码包,包括:
对开发代码文件中的开发代码依据预设的代码功能类别进行分类;
将属于同一类别的开发代码组成一个原始代码包;
依据预设的包压缩规则,生成包说明文件及每个所述原始代码包的包配置文件,所述包说明文件中包括有每个原始代码包的包信息及其包配置文件的位置信息,每个所述包配置文件中包含有其所属原始代码包的压缩方式。
上述方法,优选的,所述执行所述压缩配置文件,以使得分别以每个所述包配置文件中的压缩方式对其对应的原始代码包进行压缩处理,得到多个压缩代码包,包括:
读取所述包说明文件,以获取所述包说明文件中每个包配置文件的位置信息;
以所述位置信息读取到每个所述包配置文件;
获取每个所述包配置文件中的压缩方式;
以所述压缩方式对其所属原始代码包进行代码压缩,得到每个原始代码包各自对应的压缩代码包;
以所述压缩配置文件中的压缩属性,将所有所述压缩代码包进行结构合并,得到压缩代码文件,所述压缩代码文件中每个压缩代码包与其对应原始代码包的开关变量相关联。
上述方法,优选的,在得到多个压缩代码包之后,所述方法还包括:
依据接收到的调用请求,确定与所述调用请求相对应的压缩代码包所对应的第一开关变量;
依据所述第一开关变量,生成调用代码;
执行所述调用代码,以调用与所述第一开关变量相对应的压缩代码包。
上述方法,优选的,在执行所述第一调用代码,以调用与所述第一开关变量相对应的压缩代码包之后,所述方法还包括:
依据接收到的调试请求,确定与所述调试请求相对应的压缩代码包所对应的第二开关变量;
依据所述第二开关变量,生成调试代码;
执行所述调试代码,以调用与所述第二开关变量相对应的原始代码包。
本发明还提供了一种代码压缩系统,应用于预先构建完成的压缩环境中,所述系统包括:
代码分包单元,用于依据预设的压缩规则,对开发代码文件中的开发代码进行分包,得到多个原始代码包,每个所述原始代码包分别对应其包配置文件,所述包配置文件中包含有其所属原始代码包的压缩方式;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国农业银行股份有限公司,未经中国农业银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410709985.5/2.html,转载请声明来源钻瓜专利网。