『壹』 android mvp是什麼意思
MVP模式是MVC模式在Android上的一種變體,要介紹MVP就得先介紹MVC。在MVC模式中,Activity應該是屬於View這一層。而實質上,它既承擔了View,同時也包含一些Controller的東西在裡面。這對於開發與維護來說不太友好,耦合度大高了。把Activity的View和Controller抽離出來就變成了View和Presenter,這就是MVP模式。
在Android項目中,Activity和Fragment占據了大部分的開發工作。如果有一種設計模式(或者說代碼結構)專門是為優化Activity和Fragment的代碼而產生的,你說這種模式重要不?這就是MVP設計模式。
按照MVC的分層,Activity和Fragment(後面只說Activity)應該屬於View層,用於展示UI界面,以及接收用戶的輸入,此外還要承擔一些生命周期的工作。Activity是在Android開發中充當非常重要的角色,特別是TA的生命周期的功能,所以開發的時候我們經常把一些業務邏輯直接寫在Activity裡面,這非常直觀方便,代價就是Activity會越來越臃腫,超過1000行代碼是常有的事,而且如果是一些可以通用的業務邏輯(比如用戶登錄),寫在具體的Activity里就意味著這個邏輯不能復用了。如果有進行代碼重構經驗的人,看到1000+行的類肯定會有所顧慮。因此,Activity不僅承擔了View的角色,還承擔了一部分的Controller角色,這樣一來V和C就耦合在一起了,雖然這樣寫方便,但是如果業務調整的話,要維護起來就難了,而且在一個臃腫的Activity類查找業務邏輯的代碼也會非常蛋疼,所以看起來有必要在Activity中,把View和Controller抽離開來,而這就是MVP模式的工作了。
『貳』 Android MVP 開發模式有哪些優缺點
android MVP開發模式的優點
1)View和Model之間的耦合度降低,使其更關注自身業務邏輯,蘆陵消結構清晰,維護方便;
2)便於單元測試;
3) 代碼復用率提陪知高;
4)代碼框架更適用於快速迭代開發;
android MVP開發模式的缺點
1)MVP模式的汪改不足,主要表現在每個view都有presenter ,類相對比較多。
2)寫的介面比較多,一個套一個,接手不熟,很容易暈。
『叄』 Android中MVC、MVP、MVVM的區別與使用
MVC是Model-View-Controller的縮蠢磨坦寫,從字面意思可以拆分成如下結構:
它將數據、視圖、控制分開,實現了松耦合。
MVP(Model-View-Presenter)是MVC的改良游斗模式。與MVP一樣,實現了視圖、模型、控制的解耦,重點是改變的通信方式。
MVVM實現了數據與UI的雙重綁定,其中 DataBinding 是實現MVVM的關鍵工帶桐具。
『肆』 android開發一般都使用什麼框架
目前框架使用的主要都是開源框架,都可以在github上找到:
1、volley
2、android-async-http
3、Afinal框架
4、xUtils框架
5、ThinkAndroid
6、LoonAndroid
主要有以下模塊:
(1) 自動注入框架(只需要繼承框架內的application既可)
(2)
圖片載入框架(多重緩存,自動回收,最大限度保證內存的安全性)
(3) 網路請求模塊(繼承了基本上現在所有的http請求)
(4)
eventbus(集成一個開源的框架)
(5) 驗證框架(集成開源框架)
(6) json解析(支持解析成集合或者對象)
(7) 資料庫(不知道是哪位寫的 忘記了)
(8) 多線程斷點下載(自動判斷是否支持多線程,判斷是否是重定向)
(9)
自動更新模塊
(10) 一系列工具類