一、準備
組件化
隨著業(yè)務需求的增長,在單工程 MVC 模式下,app 代碼逐漸變得龐大,面對的高耦合的代碼和復雜的功能模塊,我們或許就需要進行重構(gòu)了,以組件化的形式,將需要的組件以 pod 私有庫的形式安裝到最后的主工程中,組件間各自獨立、解耦,僅依賴中間件進行通信,這或許就是極好的架構(gòu)形式。
使用 CocoaPods
如果你的 Mac 系統(tǒng)升級過了,避免出現(xiàn)莫名的問題,強烈建議重裝 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 的,可創(chuàng)建基于 git 管理的私有庫 spec repo,因公司性質(zhì)及要求,代碼一律使用內(nèi)部 svn 管理。因此本文完全使用 svn,來進行私有庫制作。(使用 git 的文章網(wǎng)上很多,更方便,其實最終感覺也都差不多)
安裝 cocoapods-repo-svn 插件,參考 https://github.com/dustywusty/cocoapods-repo-svn 。
代碼文件來源
因公司項目原因,本文以網(wǎng)上的 demo 代碼來演示。demo 來源 https://github.com/sun6boys/CRMainProject