麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

設(shè)計模式-01-MVC

2019-11-14 18:20:34
字體:
供稿:網(wǎng)友

概述


  • Model-View-Controller(MVC),即模型-視圖-控制器。
  • MVC將軟件系統(tǒng)分成三大部分:Model,View,Controller,三個部分通過某種機(jī)制通信

M、V、C的職能


  • M(Model)

    • 應(yīng)用程序的核心,用于處理應(yīng)用程序數(shù)據(jù)邏輯部分
  • V(View)

    • 處理應(yīng)用程序數(shù)據(jù)的顯示
    • 通常依據(jù)Model創(chuàng)建
  • C(Controller)

    • 處理用戶的交互
    • 從視圖讀取數(shù)據(jù),控制用戶輸入,并向模型發(fā)送數(shù)據(jù)

M、V、C之間的通信


  • 圖解(出自斯坦福大學(xué)CS193課程的課件

  • Controller與Model之間的通信

    • Controller可以主動向Model發(fā)起會話
    • Model職能被動地回復(fù)Controller發(fā)起的會話,不能主動請求Controller
  • Controller與View

    • Controller可以完全操控View,因為Controller要把View顯示在屏幕上
    • View可以向Controller發(fā)送消息,因為View要將用戶的動作傳遞給Controller
  • Model與View之間無法直接通信
  • 總結(jié)

    • Controller對Model:

      • 通過API
    • C對V:

      • Outlet
    • V對C:

      • Target-action,Delegate,Datasource
    • M對C:

      • Notification,KVO

V與C之間通信的方式


  • 目標(biāo)操作(target-action)

    • Controller內(nèi)會懸掛一個目標(biāo)(target),并將一個操作(action)給將要和它交流的視圖對象,如圖解中的target與action
    • 如,為View中的某個按鈕添加一個監(jiān)聽事件,當(dāng)按鈕被點(diǎn)擊時就執(zhí)行相應(yīng)的處理。
  • 委托

    • 為視圖中的某個控件設(shè)置代理,當(dāng)控件被操作時發(fā)送相應(yīng)的代理消息,執(zhí)行相應(yīng)的代理方法,實現(xiàn)View與Controller的通信
    • 如,tableView的代理
  • 數(shù)據(jù)源

    • Controller通過數(shù)據(jù)源將View需要的數(shù)據(jù)傳遞給View,實現(xiàn)Controller與View的通信

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产成年人在线观看 | 5xsq在线视频 | 久久久久久久久久久亚洲 | 国产手机在线视频 | 久久久久免费精品国产小说色大师 | 国产88久久久国产精品免费二区 | 久久精品av | 黄色网址你懂的 | 宅男噜噜噜66国产免费观看 | 一起草av在线 | 久久99亚洲精品 | 中国妞xxxhd露脸偷拍视频 | 国产999视频在线观看 | 性欧美视频在线观看 | av影院在线播放 | 九草视频 | 日本视频免费看 | 在线播放黄色网址 | 色网在线视频 | 性毛片视频 | 国产精品久久久久久模特 | 巨根插入| 国产精品一区二区三区在线播放 | 又黄又爽免费无遮挡在线观看 | 国产精品成人一区二区三区吃奶 | 男男羞羞视频网站国产 | 欧美日韩大片在线观看 | 亚洲精品无码不卡在线播放he | 亚洲操比视频 | 国产系列 视频二区 | 精国品产一区二区三区有限公司 | 87成人免费看片 | 亚洲综合视频在线播放 | 国产成人自拍视频在线 | 91精品国产91 | 国产日韩在线观看一区 | 国产日本在线播放 | 久久久久久久国产a∨ | 天天夜天天操 | 欧美大胆xxxx肉体摄影 | 久久精品网址 |