[发明专利]一种IOS平台下工程项目的组件化构建方法在审
申请号: | 201710949092.1 | 申请日: | 2017-10-12 |
公开(公告)号: | CN107729061A | 公开(公告)日: | 2018-02-23 |
发明(设计)人: | 万文为;田淑宁;朱留锋;荣强 | 申请(专利权)人: | 武汉市灯塔互动文化传播有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 深圳市六加知识产权代理有限公司44372 | 代理人: | 严泉玉 |
地址: | 430000 湖北省武汉市东湖开发区光*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 ios 平台 工程项目 组件 构建 方法 | ||
1.一种IOS平台下工程项目的组件化构建方法,其特征在于,包括:
对工程项目按组件层次划分为业务组件、基础组件和路由中间件组件,对所述业务组件和基础组件按功能服务粒度划分为服务子组件;
构建所述路由中间件组件,所述路由中间件组件用于协调解耦所述服务子组件,并为所述服务子组件提供自动发现服务和组件间通信服务,所述路由中间件组件中包含有所述服务子组件的方法接口;
根据所述路由中间件组件中的方法接口构建所述服务子组件;
通过CocoaPods建立私有仓库,并将所述服务子组件和路由中间件组件提交到所述私有仓库;
通过CocoaPods将所述私有仓库中的相应组件引入所述工程项目,实现所述工程项目的构建。
2.如权利要求1所述的IOS平台下工程项目的组件化构建方法,其特征在于,所述业务组件为与业务相关的上层功能服务组件;所述基础组件是为业务组件提供基本功能的底层支撑组件。
3.如权利要求1或2所述的IOS平台下工程项目的组件化构建方法,其特征在于,所述基础组件包括如下一种或多种:网络组件、缓存组件、资源组件、日志组件或配置组件。
4.如权利要求1或2所述的IOS平台下工程项目的组件化构建方法,其特征在于,所述路由中间件组件对外提供服务发现接口,所述服务发现接口定义包括:模块名称、模块下的接口名称、提供给模块接口的参数名称以及是否为缓存模块。
5.如权利要求1或2所述的IOS平台下工程项目的组件化构建方法,其特征在于,所述路由中间件组件通过以下过程实现:
调用NSClassFromString方法,通过模块名动态创建模块;
调用NSSelectorFromString方法,通过方法名动态创建模块的对外方法接口;
通过respondsToSelector验证模块下是否提供了对应接口,如果模块下存在对应接口则通过performSelector执行模块下面的参数。
6.如权利要求1或2所述的IOS平台下工程项目的组件化构建方法,其特征在于,还包括:基于路由组件,构建针对每个组件的特有路由协议,从而将各组件对外的接口进行简化封装,以简化组件之间的调用;其中,所述针对每个组件的特有路由协议采用IOS中的类别实现。
7.如权利要求1或2所述的IOS平台下工程项目的组件化构建方法,其特征在于,所述通过CocoaPods建立私有仓库,并将所述服务子组件和路由中间件组件的podspec文件提交到所述私有仓库,具体为:
创建用来存储各服务子组件podspec文件的私有仓库;
拉取私有仓库到本地;
创建组件podspec格式文件;
在本地测试验证组件,通过验证后上传各服务子组件的podspec到私有仓库。
8.如权利要求1或2所述的IOS平台下工程项目的组件化构建方法,其特征在于,所述工程项目通过CocoaPods引入相应组件,具体为:
组件构建完成并放到私有仓库后,主工程通过Podfile引入相关组件,并通过CocoaPods组件管理方式pod install构建工程,组件更新后通过pod update更新到主工程。
9.如权利要求7所述的IOS平台下工程项目的组件化构建方法,其特征在于,所述podspec格式文件中包括如下的一种或多种:组件名称、组件版本、组件功能描述以及组件依赖的三方库。
10.如权利要求8所述的IOS平台下工程项目的组件化构建方法,其特征在于,在引用私有仓库时,将私有源添加到所述Podfile文件中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉市灯塔互动文化传播有限公司,未经武汉市灯塔互动文化传播有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710949092.1/1.html,转载请声明来源钻瓜专利网。