android 使用MVP模式完成一個小demo——登陸

mvp模式已經火很久了,之前也看網上好多人都在討論這個設計模式,從網上下載過很多demo,可能是基礎不到位,挺難理解的。這段時間公司來的新同事,聽說他就是使用這種模式開發,一時好奇就跑過去請教了一波,趁熱打鐵,自己再研究一波,希望有所突破。

百度下來,發現一篇簡而易懂的好文,特貼出來https://segmentfault.com/a/1190000003927200。我的demo是一個登陸功能,也是這篇文章裏的一個功能,本寶依葫蘆畫瓢看了下自己照着打了一波,若有所獲。

首先來看看mvp的構成:

M:model (數據結構,可以理解成JavaBean)

V:View (UI界面, layout佈局等)

P:Presenter (業務邏輯處理接口)

MVP的核心思想:

這裏寫圖片描述

MVP的好處:
我是第一次使用MVP模仿寫demo, 除了發現會創建好多接口,還有邏輯處理很清晰以外,並未發現其他優點,嘿嘿。

MVP的使用:

這裏寫圖片描述

敲完demo,感覺這張圖的表達簡直不要太完美。
1、Activity(或者Fragment)需要繼承IVew接口, IVew接口是專門處理界面UI變化的,裏面有一系列和界面有關的方法;
2、Acitity還需要實例化IPresenter接口,IPresenter接口專門處理業務邏輯,裏面有一系列和業務邏輯相關的方法;
3、PresenterCompl類繼承IPresenter接口, 包含IVew接口,這個類實現IPresenter接口的具體方法,並傳入IView裏對應的方法來通知Activity。
4、Model並不是必須有的,但是一定會有View和Presenter。

代碼上傳到github上了,在mvpdemo裏面:https://github.com/jjjSilence/jjjPlus/tree/master/mvpdemo

發佈了30 篇原創文章 · 獲贊 10 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章