Cocoa 模式

2018-08-12 21:19 更新

Cocoa 模式

委托模式

    委托對象不應(yīng)該被 ``retain``

實現(xiàn)委托模式的類應(yīng):

  1. 擁有一個名為 delegate_ 的實例變量來引用委托。
  2. 因此,訪問器方法應(yīng)該命名為 delegatesetDelegate:。
  3. delegate_ 對象不應(yīng)該被 retain。

模型/視圖/控制器(MVC)

Tip
    分離模型與視圖。分離控制器與視圖、模型?;卣{(diào) API 使用 ``@protocol``。
  • 分離模型與視圖:不要假設(shè)模型或者數(shù)據(jù)源的表示方法。保持數(shù)據(jù)源與表示層之間的接口抽象。視圖不需要了解模型的邏輯(主要的規(guī)則是問問你自己,對于數(shù)據(jù)源的一個實例,有沒有可能有多種不同狀態(tài)的表示方法)。

  • 分離控制器與模型、視圖:不要把所有的 “業(yè)務(wù)邏輯” 放進跟視圖有關(guān)的類中。這使代碼非常難以復(fù)用。使用控制器類來處理這些代碼,但保證控制器不需要了解太多表示層的邏輯。

  • 使用 @protocol 來定義回調(diào) API,如果不是所有的方法都必須實現(xiàn),使用 @optional(特例:使用 Objective-C 1.0 時,@optional 不可用,可使用類別來定義一個 “非正規(guī)的協(xié)議”)。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號