[发明专利]一种基于组件化的软件开发方法及装置有效
| 申请号: | 201811544550.4 | 申请日: | 2018-12-17 |
| 公开(公告)号: | CN111324333B | 公开(公告)日: | 2022-08-30 |
| 发明(设计)人: | 葛贤亮;罗企;宋小龙;刘亚国;李果;孙文阅 | 申请(专利权)人: | 中移(杭州)信息技术有限公司;中国移动通信集团有限公司 |
| 主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/71;G06F8/73 |
| 代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
| 地址: | 311100 浙江省杭州市*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 组件 软件 开发 方法 装置 | ||
本申请公开了一种基于组件化的软件开发方法及装置,属于软件开发领域,该方法包括:根据待开发软件需求构建M个组件;M个组件包括至少一个服务组件;针对每个组件,在资源目录中的配置文件中定义组件对应的注解类;注解类包括标记组件的组件标识和组件标识对应的组件服务信息;根据M个组件的组件标识,在资源目录中配置M个组件对应的多组依赖关系;每组依赖关系中至少存在两个有依赖关系的组件;遍历M个组件的组件标识,并根据每个组件的组件标识对应的组件服务信息在预定义线程运行多组依赖关系对应的组件,以便验证多组依赖关系是否冲突。如此,该方案支持组件存在运行时依赖关系的场景,可以实现组件化解耦,提高开发与调试效率。
技术领域
本申请涉及软件开发技术领域,尤其涉及一种基于组件化的软件开发方法及装置。
背景技术
随着移动互联网的发展,终端设备的软件业务越来越复杂,代码量也越来越多,软件开发团队也越来越大。采用以往官方推荐的移动端软件架构已经很难适应现在的节奏。为了便于多团队多业务并行协作开发测试,组件化架构也被各公司各团队重视起来。
现有技术中的组件化方案主要包括以下几种:第一种,通过统一资源标识符(uniform resource identifier,URI)方式注册组件以及消息分发,采用json格式传递数据。采用这种方式,各组件之间只能实现界面跳转功能,无法支持服务组件。
第二种,组件打包成apk,通过动态加载的方式进行组件的注册与数据交互。采用这种方式,动态加载的方式不利于调试,且由于该方案不被官方支持,存在很大的兼容性问题。
第三种,组件采用aar方式加载,运行期交互采用反射的方式实例化接口。采用这种方式,在软件代码被混淆的情况下,很容易出现类加载失败,不利于开发与调试,且接口有更新时,调用组件无法及时更新接口。
第四种,组件共同依赖公共模块,组件之间不存在功能依赖。采用这种方式,由于组件功能差异较大,共同依赖的代码会越来越多,导致公共模块承载的业务代码也越来越多,与组件化解耦的初衷背道而驰。
而且,上述几种方案都仅支持页面模块的组件化,不支持纯后台服务组件。对于一些需要常驻后台软件(比如,安全管控类软件)不适用;而且,不支持组件存在运行时依赖关系的场景,譬如某个业务组件依赖网络交互组件初始化之后才能运行。基于此,亟需一种基于组件化的软件开发方法,以解决现有技术中的方案无法支持服务组件、组件耦合性高、不利于开发与调试等缺陷。
发明内容
本申请实施例提供一种基于组件化的软件开发方法及装置,用以实现支持服务组件、组件化解耦、提高开发与调试效率。
第一方面,本申请实施例提供一种基于组件化的软件开发方法,包括:根据待开发软件需求构建M个组件;M个组件包括至少一个服务组件;M为大于1的整数;针对M个组件中的每个组件,在资源目录中的配置文件中定义该组件对应的注解类;注解类包括标记该组件的组件标识和组件标识对应的组件服务信息;根据M个组件的组件标识,在资源目录中配置M个组件对应的多组依赖关系;每组依赖关系中至少存在两个有依赖关系的组件;遍历M个组件的组件标识,并根据每个组件的组件标识对应的组件服务信息在预定义线程运行多组依赖关系对应的组件。
基于该方案,一方面,由于根据待开发软件的需求构建的组件中包括服务组件,而且在配置文件中定义了注解类,可以实现待开发软件在运行时支持服务组件,而且可以提高类加载成功率;另一方面,由于配置了M个组件对应的多组依赖关系,遍历M个组件的组件标识,并根据每个组件的组件标识对应的组件服务信息在预定义线程运行多组依赖关系对应的组件,如此,该方案支持组件存在运行时依赖关系的场景,组件之间有依赖关系,组件不过多依赖于公共模块,从而可以实现组件化解耦,提高开发与调试效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中移(杭州)信息技术有限公司;中国移动通信集团有限公司,未经中移(杭州)信息技术有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811544550.4/2.html,转载请声明来源钻瓜专利网。





