一、准备
组件化
随着业务需求的增长,在单工程 MVC 模式下,app 代码逐渐变得庞大,面对的高耦合的代码和复杂的功能模块,我们或许就需要进行重构了,以组件化的形式,将需要的组件以 pod 私有库的形式安装到最后的主工程中,组件间各自独立、解耦,仅依赖中间件进行通信,这或许就是极好的架构形式。
使用 CocoaPods
如果你的 Mac 系统升级过了,避免出现莫名的问题,强烈建议重装 CocoaPods 及更新 ruby。(可参考 http://www.jianshu.com/p/8169f5d7f364)
CocoaPods 下载框架的原理及 spec、Podfile 文件,可参考 http://www.jianshu.com/p/8a7b9232cbab或 http://blog.csdn.net/morenyaojing/article/details/53376475 。
CocoaPods 默认的 spec repo,是基于 git 的,可创建基于 git 管理的私有库 spec repo,因公司性质及要求,代码一律使用内部 svn 管理。因此本文完全使用 svn,来进行私有库制作。(使用 git 的文章网上很多,更方便,其实最终感觉也都差不多)
安装 cocoapods-repo-svn 插件,参考 https://github.com/dustywusty/cocoapods-repo-svn 。
代码文件来源
因公司项目原因,本文以网上的 demo 代码来演示。demo 来源 https://github.com/sun6boys/CRMainProject