本文是Android面試題整理中的一篇,結合右下角目錄食用更佳
1. Android中的設計模式MVP
- MVP是Model-View—Presenter的簡稱。
- 在談論MVP時,我們通常和MVC(Model-View-Contronler)做比較,MVC的View和Model之間存在直接的互動,MVP沒有。以下是MVC和MVP結構對比
MVC:
MVP:
具體實現:
在MVP模式中,我們將Activity或者Fragment以及它們的xml檔案一起作為View,View中含有一個Presenter例項,可以和Presenter進行互動;Presenter中含有View的例項,可以做一些邏輯控制工作和作為View和Model的媒介。
MVP的好處:
- 解耦,提高可維護性和複用性
- 方便測試(適合於打樁測試)
參考資料
2. MVVM
- ViewModel不再直接操控View,而是通過資料繫結更新View
- 可以通過 Data Binding或者ViewModel框架實現