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