在MVC的設(shè)計(jì)模式中衷笋,Android中的View層對(duì)應(yīng)的是xml布局問(wèn)題捆毫,能做的事情很少疲扎;而Controller層所對(duì)應(yīng)的Activity類棚点,不僅要控制業(yè)務(wù)邏輯早处,同時(shí)也要處理操作UI的功能,導(dǎo)致Controller層過(guò)于冗余瘫析。為了改善這一點(diǎn)砌梆,引入了MVP的設(shè)計(jì)模式。
一贬循、MVP定義
1.Model層:依然是業(yè)務(wù)邏輯和實(shí)體模型咸包。
2.View層:對(duì)應(yīng)Activity,負(fù)責(zé)View的繪制以及與用戶交互杖虾。
3.Presenter層:負(fù)責(zé)完成View與Model層的交互烂瘫。
MVP與MVC區(qū)別.png
在MVC設(shè)計(jì)模式中,Model層是可以直接和View層進(jìn)行交互的亏掀;而MVP中忱反,Model層和View層的交互只能通過(guò)Presenter層進(jìn)行完成。