<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-348  評論-598  文章-0  trackbacks-0

    如果把這三者放在一起比較,先說一下三者的共同點,也就是Model和View:

    • Model:數據對象,同時,提供本應用外部對應用程序數據的操作的接口,也可能在數據變化時發出變更通知。Model不依賴于View的實現,只要外部程序調用Model的接口就能夠實現對數據的增刪改查。

    • View:UI層,提供對最終用戶的交互操作功能,包括UI展現代碼及一些相關的界面邏輯代碼。

    三者的差異在于如何粘合View和Model,實現用戶的交互操作以及變更通知

    • Controller

    Controller接收View的操作事件,根據事件不同,或者調用Model的接口進行數據操作,或者進行View的跳轉,從而也意味著一個Controller可以對應多個View。Controller對View的實現不太關心,只會被動地接收,Model的數據變更不通過Controller直接通知View,通常View采用觀察者模式監聽Model的變化。

    • Presenter

    Presenter與Controller一樣,接收View的命令,對Model進行操作;與Controller不同的是Presenter會反作用于View,Model的變更通知首先被Presenter獲得,然后Presenter再去更新View。一個Presenter只對應于一個View。根據Presenter和View對邏輯代碼分擔的程度不同,這種模式又有兩種情況:Passive View和Supervisor Controller。

    • ViewModel

    注意這里的“Model”指的是View的Model,跟MVVM中的一個Model不是一回事。所謂View的Model就是包含View的一些數據屬性和操作的這么一個東東,這種模式的關鍵技術就是數據綁定(data binding),View的變化會直接影響ViewModel,ViewModel的變化或者內容也會直接體現在View上。這種模式實際上是框架替應用開發者做了一些工作,開發者只需要較少的代碼就能實現比較復雜的交互。



    ---------------------------------------------------------
    專注移動開發

    Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
    posted on 2017-05-10 11:03 TiGERTiAN 閱讀(440) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产亚洲精品2021自在线| 亚洲av永久无码精品漫画| 亚洲一线产区二线产区区| XXX2高清在线观看免费视频| 国产精品自在自线免费观看| 亚洲αⅴ无码乱码在线观看性色| 暖暖免费高清日本一区二区三区| 俄罗斯极品美女毛片免费播放| 亚洲.国产.欧美一区二区三区| 日本不卡高清中文字幕免费| 特级毛片全部免费播放a一级| 天堂亚洲免费视频| 337p日本欧洲亚洲大胆色噜噜 | 777亚洲精品乱码久久久久久 | 青青青国产免费一夜七次郎| 亚洲国产精品人人做人人爱| 羞羞视频免费网站入口| 亚洲午夜国产片在线观看| a级毛片免费观看视频| 亚洲人成在线观看| 亚洲精品无码专区在线| 久久久久免费精品国产| 天堂亚洲免费视频| 花蝴蝶免费视频在线观看高清版| 亚洲AV人无码激艳猛片| 国产一卡2卡3卡4卡2021免费观看 国产一卡2卡3卡4卡无卡免费视频 | 久久WWW免费人成一看片| 亚洲一区二区三区国产精品无码| 成人毛片免费观看视频大全| 日韩一级片免费观看| 扒开双腿猛进入爽爽免费视频| 日韩色视频一区二区三区亚洲| 亚洲综合无码精品一区二区三区| 色天使亚洲综合一区二区| 亚洲婷婷国产精品电影人久久| 四虎影视在线影院在线观看免费视频| 亚洲国产综合在线| 亚洲国产天堂久久综合| 免费一级毛片在线播放视频免费观看永久 | 日韩电影免费在线观看网站| 亚洲AV色吊丝无码|