亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

MVC / MVP / MVVM

spacewander / 897人閱讀

摘要:同時,在技術層面,也帶來了諸如等新特性。接收用戶交互請求將請求轉交給操作數(shù)據更新更新完數(shù)據,通知數(shù)據發(fā)生變化更新數(shù)據低耦合。開發(fā)人員可以專注于業(yè)務邏輯和數(shù)據的開發(fā),設計人員可以專注于頁面設計,生成代碼。

MVC

MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設計典范,用一種業(yè)務邏輯、數(shù)據、界面顯示分離的方法組織代碼,將業(yè)務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務邏輯。MVC被獨特的發(fā)展起來用于映射傳統(tǒng)的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。

View 接受用戶交互請求 View 將請求轉交給Controller Controller 操作Model進行數(shù)據更新數(shù)據更新之后,Model通知View更新 數(shù)據變化 View 更新變化數(shù)據

在MVC模型里,Model不依賴于View, 但是 View是依賴于Model的。不僅如此, 因為有一些業(yè)務邏輯在View里實現(xiàn)了,導致要更改View也是比較困難的, 至少那些業(yè)務邏輯是無法重用的

MVP

MVP的全稱為Model-View-Presenter,Model提供數(shù)據,View負責顯示,Controller/Presenter負責邏輯的處理。MVP與MVC有著一個重大的區(qū)別:在MVP中View并不直接使用Model,它們之間的通信是通過Presenter (MVC中的Controller)來進行的,所有的交互都發(fā)生在Presenter內部,而在MVC中View會直接從Model中讀取數(shù)據而不是通過 Controller。

View 接收用戶交互請求 View 將請求轉交給 Presenter Presenter 操作Model進行數(shù)據更新 Model通知Presenter數(shù)據發(fā)生變化 Presenter 更新View數(shù)據

Model與View完全分離,修改互不影響 更高效地使用,因為所有的邏輯交互都 發(fā)生在一個地方—Presenter內部一個Preseter可用于多個View,而不需要改 變Presenter的邏輯(因為View的變化總 是比Model的變化頻繁)。更便于測試。把邏輯放在Presenter中,就可以脫離用 戶接口來測試邏輯(單元測試)

MVVM

MVVM是Model-View-ViewModel的簡寫。微軟的WPF帶來了新的技術體驗,如Silverlight、音頻、視頻、3D、動畫……,這導致了軟件UI層更加細節(jié)化、可定制化。同時,在技術層面,WPF也帶來了 諸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由來便是MVP(Model-View-Presenter)模式與WPF結合的應用方式時發(fā)展演變過來的一種新型架構框架。它立足于原有MVP框架并且把WPF的新特性糅合進去,以應對客戶日益復雜的需求變化。

View 接收用戶交互請求 View 將請求轉交給ViewModel ViewModel 操作Model數(shù)據更新 Model更新完數(shù)據, 通知ViewModel數(shù)據發(fā)生變化 ViewModel 更新View數(shù)據

低耦合。View可以獨立于Model變化和修改,一個ViewModel可以綁定到不同的”View”上,當View變化的時候Model可以不變,當Model變化時候View也可以不變。?

可重用性。你可以把一些視圖邏輯放在一個ViewModel里面,讓很多view重用這段視圖邏輯。?

獨立開發(fā)。開發(fā)人員可以專注于業(yè)務邏輯和數(shù)據的開發(fā)(ViewModel),設計人員可以專注于頁面設計,生成xml代碼。

可測試。界面素來是比較難于測試的,而現(xiàn)在測試可以針對ViewModel來寫。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://www.ezyhdfw.cn/yun/98930.html

相關文章

  • MVCMVPMVVM 模式如何選擇?

    摘要:如何同步的變更。在沒有環(huán)境下對進行單元測試的時候,業(yè)務邏輯的正確性是無法驗證的更新的時候,無法對的更新操作進行斷言。對是通過接口進行,在對進行不依賴環(huán)境的單元測試的時候。這里根據上面的例子給出了的單元測試樣例。 前言 做客戶端開發(fā)、前端開發(fā)對MVC、MVP、MVVM這些名詞不了解也應該大致聽過,都是為了解決圖形界面應用程序復雜性管理問題而產生的應用架構模式。 網上很多文章關于這方面的討...

    Worktile 評論0 收藏0
  • MVCMVPMVVM 對比筆記

    摘要:模型與視圖解耦,編寫單元測試更方便。切實的將模型綁定到了視圖,這一責任在中被控制器提前持有了。視圖和視圖模型使用數(shù)據綁定和事件進行通信。觸發(fā)器數(shù)據觸發(fā)器允許我們進一步在視圖狀態(tài)變化后改變我們的對象屬性。 MVC、MVP 和 MVVM 三個非常重要的架構模式 MVC (Model(模型)-View(視圖)-Controller(控制器)) MVP (Model(模型)-View(視圖)...

    paney129 評論0 收藏0
  • MVC,MVP,MVVM淺析

    摘要:的模式之間不同主要是與的數(shù)據傳遞的流程不同。所以無論是復雜化簡單化還是修改流程,基本都是因為技術棧變化了對應做的調整。實例實際項目往往采用更靈活的方式,以為例。用戶可以向發(fā)送指令事件,再由直接要求改變狀態(tài)。與不發(fā)生聯(lián)系,都通過傳遞。 概述 M -V- X 本質都是一樣的 重點還是在于M-V 的橋梁要靠 X來牽線。 X的模式之間不同 主要是 M與V 的數(shù)據傳遞的流程不同。數(shù)據傳遞的流程不...

    Vultr 評論0 收藏0
  • MVC MVP MVVM

    摘要:,的事件回調函數(shù)中調用的操作方法。以為例調用關系模式實際就是將中的改名為,調用過程基本一致,最大的改良是間的雙向綁定。和間,有一個對象,可以操作修改,使用。 參考:MVC,MVP 和 MVVM 的圖示 - 阮一峰http://www.ruanyifeng.com/blo...Web開發(fā)的MVVM模式http://www.cnblogs.com/dxy198...界面之下:還原真實的MV...

    wushuiyong 評論0 收藏0

發(fā)表評論

0條評論

spacewander

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<