<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 閱讀(428) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 久久伊人久久亚洲综合| 亚洲综合色成在线播放| 综合自拍亚洲综合图不卡区| 国内精品免费视频精选在线观看| 亚洲国产一区视频| 人人爽人人爽人人片A免费| 国产在线观看免费视频播放器| 亚洲女子高潮不断爆白浆| 四虎成人免费网址在线| 亚洲乱理伦片在线观看中字| 在线观看视频免费国语| 色九月亚洲综合网| 亚洲中文字幕视频国产| 永久在线观看免费视频| 亚洲色图在线观看| 日本片免费观看一区二区| 亚洲av无码片在线观看| 国产成人免费a在线视频色戒| 美女视频黄.免费网址| 亚洲中文字幕无码不卡电影 | 国产成人免费a在线视频色戒| 麻豆亚洲AV成人无码久久精品| 亚洲国产成人五月综合网| 久久www免费人成精品香蕉| 亚洲电影免费在线观看| 国产h视频在线观看免费| 国产精品亚洲а∨无码播放不卡 | 午夜视频在线观看免费完整版| 亚洲AV无码专区在线厂| 区三区激情福利综合中文字幕在线一区亚洲视频1| 一日本道a高清免费播放| 午夜影视日本亚洲欧洲精品一区| 国产高清免费视频| 黄色网页免费观看| 亚洲天天在线日亚洲洲精| 性色av免费观看| 三年片免费高清版| 在线观看亚洲AV每日更新无码 | 免费在线精品视频| 99久久免费观看| 亚洲aⅴ天堂av天堂无码麻豆 |