[发明专利]一种iOS组件化优化方法、系统及终端有效
| 申请号: | 202010385672.4 | 申请日: | 2020-05-09 |
| 公开(公告)号: | CN111611024B | 公开(公告)日: | 2022-10-11 |
| 发明(设计)人: | 张文浩;尹星;王文波;刘彬;蔡榕 | 申请(专利权)人: | 上海万间信息技术有限公司 |
| 主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F16/2455 |
| 代理公司: | 上海恒慧知识产权代理事务所(特殊普通合伙) 31317 | 代理人: | 张宁展 |
| 地址: | 200120 上海市浦*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 ios 组件 优化 方法 系统 终端 | ||
1.一种iOS组件化优化方法,其特征在于,包括:
S1,各模块根据Target_Name的命名格式创建自己的Target类;
S2,Target类内根据Action_Name的命名格式定义及实现自己的Action方法;
S3,通过scheme://[target]/[action]?[params]的格式组装URL,其中params表示Target类对象执行Action方法时所需的参数集合;
S4,Mediator根据S3中的格式解析URL,获取Target类名称和Action方法名称及params参数集合;其中,解析URL的过程,包括:
为Mediator创建一个全局的配置类,配置类的对象作为Mediator的属性存在,为配置类声明一个闭包作为属性,实现自定义的URL校验逻辑以及路由规则,并为配置类声明一个数值类型的属性,设置Target类对象缓存字典的缓存最大值;同时,在配置类中创建一个协议的声明,并声明一个协议方法,方法返回true或false值,实现充要条件校验逻辑;
S5,Mediator根据Target类名称在缓存字典中查询是否有对应的Target类对象:
若有,则直接获取;
若无,则根据Target类名称通过Runtime程序创建Target类对象,并将其添加进缓存字典;
S6,Mediator向Tartget类对象发送执行Action方法的命令,并传入params参数集合。
2.根据权利要求1所述的iOS组件化优化方法,其特征在于,所述S4中,配置类使用单例模式设计。
3.根据权利要求1所述的iOS组件化优化方法,其特征在于,所述S4中,针对URL解析过程,在解析前检查配置类对象是否实现了声明的闭包:
若已实现,则执行闭包程序并返回Target类名称和Action方法名称;
若未实现,则执行默认的解析程序获得Target类名称和Action方法名称。
4.根据权利要求1所述的iOS组件化优化方法,其特征在于,所述S5中,Target类对象的缓存逻辑采用动态管理逻辑,包括:
-若未命中缓存,则根据Target类名称通过Runtime程序创建Target类对象,并将其添加进缓存字典,同时,将当前时间作为其最近访问时间加入缓存字典以及将当前访问次数n加入缓存字典;
-若命中缓存,则获取Target类对象,同时,将当前时间作为其最近访问时间更新入缓存字典以及将当前访问次数n+1更新入缓存字典;
-加入缓存时检查当前缓存字典的缓存数量是否大于等于配置类对象的缓存最大值:
若是,则遍历当前缓存字典,查询最近访问时间最久远且访问次数最少的缓存对象,并将其移出缓存;
若否,则不清理缓存。
5.根据权利要求1所述的iOS组件化优化方法,其特征在于,所述S6中,Action方法的执行过程,包括:
在执行之前检查S5中获取到的Target类对象是否遵循了创建的协议,且是否实现了协议中声明的方法:
若是,则向Target类对象发送执行该协议方法的命令,根据方法执行的返回值判断是否继续执行Action方法,若返回值为ture则执行,若返回值为false则不执行;
若否,则直接执行Action方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海万间信息技术有限公司,未经上海万间信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010385672.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:移动终端轨迹数据的去噪方法及装置
- 下一篇:一种智能驾驶汽车运动控制系统





