iOS面試題:MVVM設計模式

組成部分如下圖所示:

在這個設計模式里,核心是ViewModel,它是一種特殊類型的model,代表了應用中UI的狀態(tài)。它包含如下內(nèi)容:

  • 每個UI控件的一些屬性。例如,text field控件的當前文本,某個button是否是enable狀態(tài)。
  • 視圖可以執(zhí)行的動作,例如按鈕點擊或者是手勢。

將ViewModel想象為視圖的模型,會比較容易理解。

MVVM模式中,三個組件的關系比MVC模式的要簡單,有下面的嚴格規(guī)則:

  • 視圖引用ViewModel,但反向不成立。
  • ViewModel引用Model,但反向不成立。

如果違背了上面兩條規(guī)則,那么就是錯誤的MVVM實施行為。

這種模式的好處:

  • 輕量級的視圖(控制器), 所有的UI邏輯都位于ViewModel中。
  • 易測試性。可以在沒有視圖的情況下,運行整個應用。

更多:iOS面試題合集

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容