999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺析MVP設計模式

2020-07-04 02:23:16寧君宇陳森
科技風 2020年17期

寧君宇 陳森

摘 要:當下MVP設計模式大量的應用于移動端安卓應用程序的開發(fā)架構(gòu)中,該設計模式的引入使得安卓程序的開發(fā)降低了耦合,增加了程序的原子性,方便了程序測試,增強了程序的穩(wěn)定性。本文首先介紹了什么是MVP設計模式,之后列舉了MVP和MVC模式的區(qū)別,然后展示MVP設計模式在安卓開發(fā)中的應用,最后分析了MVP設計模式的優(yōu)缺點及該如何選擇設計模式。

關(guān)鍵詞:安卓開發(fā);MVP設計模式;低耦合

隨著時代的不斷前進,移動互聯(lián)網(wǎng)以其快捷、經(jīng)濟、方便等特點,悄然走入人們的生活。移動應用安卓端的開發(fā)作為其中一個重要部分也在蓬勃發(fā)展,在安卓移動應用開發(fā)中,傳統(tǒng)的MVC設計模式的缺點被不斷的放大,影響了程序開發(fā)的效率和穩(wěn)定性,這時MVP設計模式走入了安卓開發(fā)的視野之中。

1 MVP設計模式

MVP,全稱 Model-View-Presenter。MVP是在MVC的基礎上變化而出的,他們的思想有一些相通的地方。在MVP設計模式中,Model層只需要專注于數(shù)據(jù)的處理,View層專注于界面的展示,及生命周期的控制,而Presenter層負責全部業(yè)務處理,提供View層想要的數(shù)據(jù),成為View層與Model層之間的橋梁。

2 MVP和MVC模式的對比

MVP和MVC模式的結(jié)構(gòu)圖,如圖1所示:

由上圖可看出,MVP模式和MVC模式的主要區(qū)別有:Presenter的出現(xiàn)成為了View和Model層溝通的橋梁,降低了它們的直接交互,從而降低View和Model之間的耦合度,增加了程序的可維護性和可測試性。Presenter承擔了更多的工作,內(nèi)部的復雜度要大于Controller。View層更加的純粹,不負責業(yè)務邏輯,專注于界面的展示,在安卓的開發(fā)過程中需要負責生命周期的控制。

3 在安卓開發(fā)中的應用

安卓開發(fā)之前采用的是MVC模式,在該模式下,安卓開發(fā)中的Activity和Fragment即屬于V層也屬于C層,承擔兩層的工作,且都需要處理各種生命周期相關(guān)的業(yè)務,導致在復雜的業(yè)務下,Activity和Fragment會非常的臃腫,代碼結(jié)構(gòu)不清晰,維護起來也特別的困難。為解決這些問題,安卓開發(fā)引入了MVP設計模式,結(jié)構(gòu)如圖2所示:

可以看到,在View與Model之間不直接溝通,降低了這兩層之間的耦合度,中間的Presenter對上銜接View層的數(shù)據(jù)需要,對下銜接Model層的數(shù)據(jù)傳送,中間處理具體的業(yè)務程序。結(jié)構(gòu)更加的清晰,方便程序的編寫和維護也方便進行單元測試。

4 MVP設計模式的優(yōu)缺點

MVP設計模式的優(yōu)點是:減低耦合,實現(xiàn)了Model與View 的真正分離,修改View而不影響Model。模塊職責分明,層次分明,便于維護,多人開發(fā)首選。Presenter可復用,一個Presenter可以用于多個View,不用去改Presenter利于單元測試。模塊分明,方便單元測試,而不用特意搭建平臺,人工模擬用戶操作等等耗時耗力的事情。

缺點是:架構(gòu)的引入在邏輯上清晰了,但代碼量增加了很多,不利于小工程項目的開發(fā)和使用。

由于Presenter層負責給View層提供數(shù)據(jù),在View層需要數(shù)據(jù)較多的情況下,會導致Presenter層和View層之間的交互較為頻繁,在一定程度上增加了他們的耦合度。

5 總結(jié)

本文首先介紹了什么是MVP設計模式,對比了MVC和MVP設計模式的區(qū)別,然后介紹了MVP設計模式在安卓應用開發(fā)中的使用及其優(yōu)缺。移動應用的開發(fā)依然在不斷的前進,新的設計模式也會層出不窮,沒有完美的設計模式,只有符合自己業(yè)務的設計模式,所以研發(fā)人員一定要根據(jù)具體的業(yè)務選擇適合自己開發(fā)模式。

參考文獻:

[1]劉宇,蔡俊濤,賴順橋,等.基于MVC和實體框架的道路照明智能管理系統(tǒng)[J].計算機與現(xiàn)代化,2015(10):64-68.

[2]王念橋.應用MVP模式改進軟件架構(gòu)[J].計算機時代,2012(4):37-38.

[3]鄧志宏,張智,李建奇,等.基于MVP模式的進銷存系統(tǒng)的軟件架構(gòu)設計[J].計算機與數(shù)字工程,2010,38(12):96-99.

[4]葛管庫.MVC模式下程序設計[J].軟件,2013,34(2):49-51.

主站蜘蛛池模板: 99久久精品无码专区免费| 久久久久亚洲精品成人网| 日韩人妻无码制服丝袜视频| 日日噜噜夜夜狠狠视频| 青青草原国产免费av观看| 国产成人免费| 一本色道久久88| 亚洲成人黄色网址| 国产精品三级专区| 国产精品亚洲天堂| 四虎成人在线视频| 5388国产亚洲欧美在线观看| 一区二区影院| 最新加勒比隔壁人妻| 日韩av电影一区二区三区四区| 日韩二区三区无| 亚洲精品少妇熟女| 日本午夜在线视频| av天堂最新版在线| 青青国产视频| 国产精品永久免费嫩草研究院| 成色7777精品在线| 日韩精品成人网页视频在线| 成人国产精品视频频| 亚洲无卡视频| 亚洲天堂网站在线| 又大又硬又爽免费视频| 一本大道香蕉高清久久| 国产一级做美女做受视频| 国产亚洲视频免费播放| 国产成人永久免费视频| 四虎国产在线观看| 区国产精品搜索视频| 成人福利在线视频| 国产污视频在线观看| 国产欧美综合在线观看第七页| 国产成人久久777777| 一区二区在线视频免费观看| 久久性妇女精品免费| 精品一区二区三区自慰喷水| 色妞永久免费视频| 欧美伦理一区| 久久精品最新免费国产成人| 天天干天天色综合网| 国产香蕉一区二区在线网站| 欧美高清国产| 国产99精品久久| 亚洲视频在线观看免费视频| 国产自产视频一区二区三区| 日韩在线播放欧美字幕| 伊人精品成人久久综合| 久久国产精品影院| 亚洲国产精品一区二区第一页免| 国产欧美日韩va另类在线播放| 国产精品第一区在线观看| 一级毛片在线直接观看| 日韩人妻精品一区| 日韩A级毛片一区二区三区| 欧美啪啪一区| 欧美精品三级在线| 国产精品区视频中文字幕 | 亚洲国产精品一区二区高清无码久久| 国产精品极品美女自在线| 国产激情无码一区二区APP| 国产免费久久精品99re丫丫一| AV无码一区二区三区四区| 成人福利在线看| 久久精品人妻中文视频| 久久天天躁狠狠躁夜夜2020一| 日韩精品资源| 在线毛片免费| 国产无码高清视频不卡| 好紧好深好大乳无码中文字幕| 亚洲精品人成网线在线| 国产尹人香蕉综合在线电影| 国产成人亚洲毛片| 亚洲va精品中文字幕| 一本久道热中字伊人| 人妖无码第一页| 国产小视频免费| 日韩欧美国产精品| 91青青在线视频|