在iOS程式設計中,我們經常談到代理代理,也就是delegate,那麼什麼是代理呢?
我們來看一下cocoa對它的描述:
Delegation is Cocoa’s term for passing off some responsibilities of an object to another
顧名思義:
代理是把職責從一個對象傳到另一個對象。
其實,如果編寫過Java或者C#程式的朋友應該知道,我們在設計的時候經常使用到接口群組合,道理是一樣的。
看一下下面的代碼:
首先,我們定義一個協定
然後,我們把這個協定組合到我們的業務邏輯類中去
接着,我們實作協定的不同表現形态
然後,我們把我們的協定實作類注入到我們的業務類中去(DI - Dependency Injection)
很簡單吧,就是這麼簡單!
技術改變世界