[发明专利]一种基于组件化的软件开发方法及装置有效
| 申请号: | 201811544550.4 | 申请日: | 2018-12-17 |
| 公开(公告)号: | CN111324333B | 公开(公告)日: | 2022-08-30 |
| 发明(设计)人: | 葛贤亮;罗企;宋小龙;刘亚国;李果;孙文阅 | 申请(专利权)人: | 中移(杭州)信息技术有限公司;中国移动通信集团有限公司 |
| 主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/71;G06F8/73 |
| 代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
| 地址: | 311100 浙江省杭州市*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 组件 软件 开发 方法 装置 | ||
1.一种基于组件化的软件开发方法,其特征在于,包括:
根据待开发软件需求构建M个组件;所述M个组件包括至少一个服务组件;所述M为大于1的整数;
针对所述M个组件中的每个组件,在资源目录中的配置文件中定义所述组件对应的注解类;所述注解类包括标记所述组件的组件标识和所述组件标识对应的组件服务信息;
根据所述M个组件的组件标识,在所述资源目录中配置所述M个组件对应的多组依赖关系;每组依赖关系中至少存在两个有依赖关系的组件;
遍历所述M个组件的组件标识,并根据每个组件的组件标识对应的组件服务信息在预定义线程运行所述多组依赖关系对应的组件;
其中,所述遍历所述M个组件的组件标识,并根据每个组件的组件标识对应的组件服务信息在预定义线程运行所述多组依赖关系对应的组件,包括:
遍历所述M个组件中每个组件的组件标识,在所述预定义线程加载所述组件的组件标识;
解析所述组件标识中的注解,得到所述组件标识对应的组件服务;
解析所述组件服务中的注解,得到所述组件标识对应的过滤器事件、组件权限和组件优先级;
解析所述多组依赖关系,根据所述M个组件的组件标识生成至少一个依赖树;所述依赖树包括根节点和依赖于所述根节点的一级子节点,以及依赖于N级子节点的N+1级子节点;所述N为大于等于1的整数;
根据所述组件的组件标识对应的组件权限和组件优先级,从所述依赖树的根节点开始遍历每个组件的组件标识,并初始化每个组件的组件标识对应的组件服务。
2.如权利要求1所述的方法,其特征在于,所述针对所述M个组件中的每个组件,在资源目录中的配置文件中定义所述组件对应的注解类,包括:
针对所述M个组件中的每个组件,执行:
在所述组件对应的配置文件中定义所述组件的组件标识;
在所述组件的组件标识中注解标记组件服务;所述组件服务用于标记所述组件的功能;
在所述组件服务中注解过滤器事件、组件权限和组件优先级。
3.如权利要求1所述的方法,其特征在于,所述根据所述组件的组件标识对应的组件权限和组件优先级,从所述依赖树的根节点开始遍历每个组件的组件标识,所述初始化每个组件的组件标识对应的组件服务之前,还包括:
在编译过程中针对每个依赖树,若确定所述依赖树中存在至少一个第一节点,则报错并停止编译;所述第一节点为所述依赖树中组件权限与其父节点的组件权限冲突的任一子节点。
4.如权利要求1-3任一项所述的方法,其特征在于,还包括:
在所述待开发软件运行时,通过预设方式唤起所述组件的执行;所述预设方式包括事件intent、消息、命令或广播。
5.一种基于组件化的软件开发装置,其特征在于,包括:
构建单元,用于根据待开发软件的需求构建M个组件;所述M个组件包括至少一个服务组件;所述M为大于1的整数;
配置单元,用于针对所述M个组件中的每个组件,在资源目录中的配置文件中定义所述组件对应的注解类;所述注解类包括标记所述组件的组件标识和所述组件标识对应的组件服务信息;根据所述M个组件的组件标识,在所述资源目录中配置所述M个组件对应的多组依赖关系;每组依赖关系中至少存在两个有依赖关系的组件;
控制单元,用于遍历所述M个组件的组件标识,并根据每个组件的组件标识对应的组件服务信息在预定义线程运行所述多组依赖关系对应的组件,以便验证所述多组依赖关系是否冲突;
其中,所述控制单元,具体用于:
遍历所述M个组件中每个组件的组件标识,在所述预定义线程加载所述组件的组件标识;
解析所述组件标识中的注解,得到所述组件标识对应的组件服务;
解析所述组件服务中的注解,得到所述组件标识对应的过滤器事件、组件权限和组件优先级;
解析所述多组依赖关系,根据所述M个组件的组件标识生成至少一个依赖树;所述依赖树包括根节点和依赖于所述根节点的一级子节点,以及依赖于N级子节点的N+1级子节点;所述N为大于等于1的整数;
根据所述组件的组件标识对应的组件权限和组件优先级,从所述依赖树的根节点开始遍历每个组件的组件标识,并初始化每个组件的组件标识对应的组件服务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中移(杭州)信息技术有限公司;中国移动通信集团有限公司,未经中移(杭州)信息技术有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811544550.4/1.html,转载请声明来源钻瓜专利网。





