模塊化是什么?
把APP/SDK拆分成高內(nèi)聚,低耦合的模塊,稱之為模塊化。每一個(gè)模塊都可以獨(dú)立開發(fā)和測試,驗(yàn)證功能和代碼的可用性。
模塊化有些什么優(yōu)點(diǎn)?
- 解耦,減小代碼復(fù)雜度,提高可維護(hù)性。
- 提高代碼質(zhì)量。每塊代碼邏輯清晰,并且可以單獨(dú)測試,質(zhì)量能夠得到保證。如果某一個(gè)功能要修改,只需要更新其中某一個(gè)模塊即可,其他模塊不受影響。
- 提高團(tuán)隊(duì)工作效率。每位小伙伴獨(dú)立維護(hù)一個(gè)或幾個(gè)模塊,權(quán)責(zé)分明。同一個(gè)模塊沉淀時(shí)間較長,可以迅速解決問題。
- 代碼靈活性。對于模塊內(nèi),可以根據(jù)具體情況,采用自己的架構(gòu)設(shè)計(jì)MVP,MVVP。選用自己的開發(fā)語言O(shè)C,swift,C/C++等。非常自主。
- 代碼復(fù)用性。如果需要新做APP,那些公共基礎(chǔ)模塊或者公共功能模塊,都可以完全共用代碼。完全可以保證代碼質(zhì)量。
模塊化如何實(shí)施?
根據(jù)目標(biāo)來分,可以分為幾個(gè)大階段
1. iOS基礎(chǔ)組件模塊化
2. iOS業(yè)務(wù)模塊化拆分
3. 模塊化獨(dú)立化編碼和測試
4. 自動化測試和持續(xù)集成
5. 全平臺模塊化
- 依賴的外部服務(wù)
- 公司內(nèi)部git服務(wù)(第3階段開始)
- Jenkins環(huán)境(第3階段開始)
- 大神們關(guān)于組件化的文章(iOS)
01 iOS 組件化 —— 路由設(shè)計(jì)思路分析--冰霜
02 蘑菇街 App 的組件化之路--Limboy
03 蘑菇街 App 的組件化之路·續(xù)--Limboy
04 iOS應(yīng)用架構(gòu)談 組件化方案--casa
05 在現(xiàn)有工程中實(shí)施基于CTMediator的組件化方案--sasa
06 iOS組件化思路-大神博客研讀和思考