久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

淺談MVC、MVP,、MVVM架構(gòu)模式的區(qū)別和聯(lián)系

 myallmy 2021-11-03

MVC,、MVP、MVVM這些模式是為了解決開發(fā)過程中的實際問題而提出來的,,目前作為主流的幾種架構(gòu)模式而被廣泛使用,。

一、MVC(Model-View-Controller)

MVC是比較直觀的架構(gòu)模式,,用戶操作->View(負責(zé)接收用戶的輸入操作)->Controller(業(yè)務(wù)邏輯處理)->Model(數(shù)據(jù)持久化)->View(將結(jié)果反饋給View),。

MVC使用非常廣泛,比如JavaEE中的SSH框架(Struts/Spring/Hibernate),,Struts(View, STL)-Spring(Controller, Ioc,、Spring MVC)-Hibernate(Model, ORM)以及ASP.NET中的ASP.NET MVC框架,xxx.cshtml-xxxcontroller-xxxmodel,。(實際上后端開發(fā)過程中是v-c-m-c-v,,v和m并沒有關(guān)系,下圖僅代表經(jīng)典的mvc模型)

圖片

二,、MVP(Model-View-Presenter)

MVP是把MVC中的Controller換成了Presenter(呈現(xiàn)),,目的就是為了完全切斷View跟Model之間的聯(lián)系,由Presenter充當(dāng)橋梁,,做到View-Model之間通信的完全隔離,。

.NET程序員熟知的ASP.NET webform、winform基于事件驅(qū)動的開發(fā)技術(shù)就是使用的MVP模式,??丶M成的頁面充當(dāng)View,實體數(shù)據(jù)庫操作充當(dāng)Model,,而View和Model之間的控件數(shù)據(jù)綁定操作則屬于Presenter,。控件事件的處理可以通過自定義的IView接口實現(xiàn),,而View和IView都將對Presenter負責(zé),。

圖片

三,、MVVM(Model-View-ViewModel)

如果說MVP是對MVC的進一步改進,那么MVVM則是思想的完全變革,。它是將“數(shù)據(jù)模型數(shù)據(jù)雙向綁定”的思想作為核心,,因此在View和Model之間沒有聯(lián)系,通過ViewModel進行交互,,而且Model和ViewModel之間的交互是雙向的,因此視圖的數(shù)據(jù)的變化會同時修改數(shù)據(jù)源,,而數(shù)據(jù)源數(shù)據(jù)的變化也會立即反應(yīng)到View上,。

這方面典型的應(yīng)用有.NET的WPF,js框架Knockout,、AngularJS等,。

圖片

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多