都是自己的理解押框。
MVC
Android程序中,數(shù)據(jù)及處理邏輯(M)此衅,xml文件(V)强戴,Activity(C),就是一個(gè)MVC結(jié)構(gòu)挡鞍。
MVP
Android程序中,數(shù)據(jù)及處理邏輯(M)预烙,Activity(V)墨微,Presenter(C),是一個(gè)MVP結(jié)構(gòu)扁掸。
優(yōu)點(diǎn)
- 耦合性低翘县,將model和view完全分離,通過(guò)接口依賴注入的方式通信
- 單一職責(zé)
- 功能拆分谴分,模塊化锈麸,結(jié)構(gòu)清晰,提高維護(hù)性牺蹄,容易理解忘伞,容易寫測(cè)試用例
缺點(diǎn)
- 簡(jiǎn)單功能用的話,屬于過(guò)度設(shè)計(jì)
- 文件多了沙兰,每個(gè)view都配一個(gè)presenter
區(qū)別
- MVC中view可以從model中獲取數(shù)據(jù)氓奈,MVP中view和model完全分離
- MVP文件多了