我是一名普通的iOS開發人員。我首先看到的第一個設計模式是使用委託模式,它主要用於回調功能。塊可以通過目標C中的協議替換委託模式嗎?
既然目標C中有塊,並且我看到越來越多的庫大量使用它們並避免委託,我想知道,塊是否永久替代使用協議的委託模式?
我最近在一個項目中使用了MKNetworkKit,我在它上面創建了一個包裝類,這個庫是基於塊的,所以我所有的代碼將封裝一個基於塊的代碼調用變成另一個基於塊碼。
我發現,這是很方便的開始,但難以調試和修改的代碼看起來複雜(回調回調裏面裏面回調!)
何時使用什麼和某些最佳實踐有什麼建議?
這個問題更適合http://programmers.stackexchange.com – rmaddy
雅,但我也看到了很多像這樣的問題。所以我傾向於困惑。 –
這是我剛發現的一篇很好的文章,它解釋了何時使用塊或委派是一個好主意。換句話說,這兩種方法都是有效的方法,但是根據您編寫的特定環境/代碼類型,您使用哪一種方法是不同的。 http://stablekernel.com/blog/blocks-or-delegation/ –