天天看點

Android MVP 新手入門

1.看檔案結構。

model層:

資料類;class

接口類;interface

接口實作類;implement

presenter層:

接口類(model和view);interface

接口實作類;implement

view層:

activity;lifecycle+implement

接口層;interface

2.了解三層作用

model:用來處理有關資料的方法,可以調用presenter中的實作類

presenter:處理有關資料和視圖的邏輯操作

view:處理視圖的變化和activity的生命周期

3.了解調用關系

總而言之:

model調用presenter,presenter調用model和view,view調用presenter。

model:

接口實作類可以調用presenter接口類裡面的邏輯方法。

也就是說,除了資料方面可以直接指派使用變量操作之外(String username = user.getUsername();)

其他任何代碼都建議直接調用presenter裡面提供的接口函數

presenter:

接口類分别有兩種,一種是為model層提供的接口,一種是為view層提供的接口。

同一頁面的model接口類和view接口類可以同時在同一個接口實作類中實作。

在接口實作類中隻有邏輯和對model、view接口類函數的調用

view:

接口實作類和activity生命周期都在activity中實作。

4.如何由0到1

  1. 建立檔案夾進行分類(model\view\presenter),然後建立對應的java類。
  2. 從activity開始寫,寫到哪裡需要什麼就去對應的層補函數去。
  3. 總而言之,入門還是很easy的。

5.總結

從代碼的角度來說,MVP的模式可以實作解耦,而且非常easy,分層比較好。

至于缺點嘛,我重構個項目看看有沒有什麼問題。希望這個repo會有被我修改的機會。

掰掰ヾ(•ω•`)o