[发明专利]代码文件隔离打包方法及装置有效
申请号: | 201810083363.4 | 申请日: | 2018-01-29 |
公开(公告)号: | CN108304175B | 公开(公告)日: | 2021-06-08 |
发明(设计)人: | 郑海波;傅晓凌 | 申请(专利权)人: | 口碑(上海)信息技术有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙) 11276 | 代理人: | 宋菲;刘云贵 |
地址: | 200131 上海市浦东新区自由*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 文件 隔离 打包 方法 装置 | ||
本发明公开了一种代码文件隔离打包方法及装置,方法包括:将一个工程文件中涉及不同分支的代码文件进行预标注处理;获取不同分支打包时传入的参数;根据参数,对代码文件进行隔离处理,得到隔离处理后的代码文件;将隔离处理后的代码文件进行打包,得到与参数对应的工程文件的包文件。本发明使用同一个工程文件,将其包含的代码文件进行预标注处理,使得一个工程文件中包含不同分支。根据打包传入的参数,对应的打包成与参数对应的包文件。本发明既解决了不同分支代码合并维护的难题,又解决了打包后各包文件中处理逻辑隔离不彻底、包文件过大等问题。
技术领域
本发明涉及软件领域,具体涉及一种代码文件隔离打包方法及装置。
背景技术
当不同的应用中均要求包含同一功能时,如图1a所示的口碑App的某页面和图1b所示的支付宝App中的某页面,两个页面中包含了部分相同的功能,如大牌快抢、附件优惠等。现有技术中一般通过如下方式实现在不同应用中包含相同功能:
采用多个分支进行管理,即维护不同的两份或多份工程文件的代码,每份工程文件的代码中根据具体的应用需求完成功能的实现,这样使得两份或多份工程文件的代码中包含了相同的代码,造成维护时需要维护多份工程文件的代码,工作量较大。同时,在一份工程文件的代码修改后,修改的内容需要手动的与另一份或多份工程文件的代码进行合并。随着代码实现功能的更新、版本的更新等,需要花费更多的时间、人力等成本进行合并,还需要解决合并时可能引起的代码冲突、业务回归量较大等问题。
或者,采用同一个工程文件的全量代码,在运行时根据不同的应用app进行判断,隔离与应用不符的代码。如口碑app和支付宝app均使用同样的一个工程文件的代码,在一份工程文件的代码中既包含了实现口碑app和支付宝app相同功能的代码和资源,也包含了实现口碑app和支付宝app不同功能的差异化代码。其中差异化代码通过如if判断进行区分。但这种方式需要将全量的代码和资源均打包,会造成打包后的包文件大小过大、代码中逻辑隔离不彻底、包含冗余逻辑等问题。同时,在运行应用时通过分支判断来区分不同的应用,减慢了应用运行的性能,给应用运行造成不良影响。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的代码文件隔离打包方法及装置。
根据本发明的一个方面,提供了一种代码文件隔离打包方法,其包括:
将一个工程文件中涉及不同分支的代码文件进行预标注处理;
获取不同分支打包时传入的参数;
根据参数,对代码文件进行隔离处理,得到隔离处理后的代码文件;
将隔离处理后的代码文件进行打包,得到与参数对应的工程文件的包文件。
可选地,代码文件包括编程语言文件、可扩展标记语言文件和/或资源文件;
将涉及不同分支的代码文件进行预标注处理进一步包括:
对编程语言文件中涉及不同分支的类、方法、属性参数和/或内部类使用标签进行预标注处理;其中,标签为注解或注释;
对编程语言文件中涉及不同分支的逻辑处理代码使用判断分支语句进行预标注处理;
和/或,
对可扩展标记语言文件中涉及不同分支的内容使用注释进行预标注处理;
和/或,
对资源文件中涉及不同分支的资源文件按照不同目录进行存储;
利用配置文件记录不同分支对应的不同目录下的资源文件路径信息。
可选地,根据参数,对代码文件进行隔离处理,得到隔离处理后的代码文件进一步包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于口碑(上海)信息技术有限公司,未经口碑(上海)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810083363.4/2.html,转载请声明来源钻瓜专利网。