2017-07-17 118 views
0

我想了解爲什麼大多數教程和指南/文章推薦使用ReactiveCocoa來進行VC和VM或VC和M之間的通信,當看似標準的委託協議方法足以實現並且更鬆散地耦合時?ReactiveCocoa與標準委派?

我上偵聽XML字符串,然後遙控應用工作,通過委託給VC回調和更新的視角。但我正在考慮切換到MVVM來減少我的VC的大小。

我不明白你爲什麼會需要使用額外的框架,VC和VM之間的通信爲導向通常會建議,當你可以完成協議的另一層作爲I M和VC之間目前使用的?

不是一個真正的代碼問題,很抱歉,但我想,爲什麼ReactiveCoca的更全面的理解是如此嚴重時,建議這可以本身並沒有做依靠的框架?

感謝

回答

0

我想說的只是與RAC信號替代代表的不是你有簡單的觀點<的起反應programming.If的目標 - >模型通信則沒有必要切換到無編程。

反應式編程與異步數據流/信號,其中我們可以合併,訂閱&有條件反應編程。

如果我們想要更新一些UI對不同實體執行操作的API請求的響應,請按順序依次調用api &,完成後會變得混亂。但是通過反應式編程,只需創建信號即可順序添加它們。一旦順序中的所有操作完成,我們就可以觀察到最後。因此,反應可可將處理所有的異步代碼開銷&按順序添加另一個信號是非常容易的,更新和合並。

http://nshipster.com/reactivecocoa/描述很簡單的方法的所有功能。

+0

,謝謝,我只是覺得,因爲它與百個參數的代表團巨資交易(對UI)實時XML數據流發送和接收這將是適當的和我的遙控器應用程序,目前的委託方法確實不錯,但我只是認爲reactivecoca可以爲此任務提供增強的功能集 – jcad

+0

是...使用反應,您可以免除實施多個代理,增強代碼流..定義依賴關係(如果適用於您的情況)..全部以異步方式。 – Ellen

+0

我將不得不更多地閱讀它,但它怎麼能夠節省多名代表?我仍然需要單獨通過每個參數? wouldnt我只是交換一個委託方法的反應可可方法? – jcad