關于iOS組件化的分析
1.組件化的目的是什么?
最近一兩年很多人都想在項目里面搞組件化,覺得搞組件化好,卻鮮有人知道組件化好在哪里?組件化的目的是什么?個人覺得組件化主要有兩個目的:
1.實現(xiàn)項目代碼的高內(nèi)聚低耦合;
2.方便多人多團隊開發(fā)(這就是大團隊為什么那么熱衷于組件化的原因,對開發(fā)的效率的提升是十分顯著的)。
2.我的項目組件化應該做到什么程度?
個人認為組件化的程度取決于項目的大小,當一個項目一個人可以輕松開發(fā)和維護時,只需要項目架構保持如下圖即可:
把基礎層的部分抽成組件,用cocoapods來維護,實現(xiàn)基礎層與表現(xiàn)層,業(yè)務層去耦合,業(yè)務層與表現(xiàn)層依然耦合。
當項目變的越來越大,功能模塊越來越多,需要五到十幾個人維護的時候,就需要明確組織里的每個人負責的功能模塊,在代碼層面也需要業(yè)務層和表現(xiàn)層區(qū)分開來,業(yè)務層和業(yè)務層之間也要區(qū)分開來,表現(xiàn)層與表現(xiàn)層之間也要區(qū)分開來,要想做到這些,需要做很多的工作,首先要劃分好功能模塊,保證一個模塊的表現(xiàn)層和業(yè)務層代碼在一個文件夾;然后一個模塊下的表現(xiàn)層和業(yè)務層邏輯要有一個明顯的區(qū)分;再引入一個中間件比如CTMediator,作者自己寫的中間件基于CTMediator的ZZRouter,中間件用cocoapods來維護;每個模塊根據(jù)中間件提供外部調(diào)用的接口,本模塊調(diào)用外部模塊,一律使用中間件來調(diào),實現(xiàn)模塊間的去耦合。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%