當(dāng)越來越多的組件開發(fā)好以后闻察,如何方便的使用組件?如何實現(xiàn)組件之間相互調(diào)用然爆?如何減少組件間的耦合性?這些思考的出現(xiàn)黍图,從而誕生了路由之說曾雕。
1. 直接import
類
這種是最直接原始的方式,耦合性高
-
開發(fā)好的組件如下:
1.png -
直接在需要用到的地方助被,導(dǎo)入此類就可使用
2.png
2. target-action
方式
CTMediator 是
target-action
這種方式比較有代表性的開源庫-
基于
CTMediator
思想剖张,建議每個組件生成一個Target
類,本例中是Target_Main
,而外部調(diào)用的話揩环,生成一個基于CTMediator
的業(yè)務(wù)分類搔弄,本例中是CTMediator+Main
.3.png -
Target_Main
類,它對接的是組件類丰滑,實現(xiàn)組件中的具體方法顾犹。4.png -
CTMediator+Main
分類,是真正供外部使用的類褒墨。它是利用runtime
實現(xiàn)解藕操作炫刷,可以看出,整個類中實現(xiàn)的方法郁妈,沒有引用到組件的任何接口浑玛。5.png -
這樣,外部使用的時候就非常的方便噩咪,完全看不到組件的任何接口顾彰。
6.png
3. url router
方式
MGJRouter 是一個高效/靈活的
iOS
URL Router
。直接在工程中
pod 'MGJRouter'
即可胃碾。-
建議每個組件生成一個
MGJRouter
的管理類涨享,便于注冊各種需要的接口。本例中是MainMGJRouter
书在。7.png -
這樣灰伟,外部使用拆又,就完全不依賴組件的任何接口儒旬,直接
openURL
即可栏账。8.png