国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

設計模式-01-MVC

2019-11-14 18:20:34
字體:
來源:轉載
供稿:網友

概述


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

M、V、C的職能


  • M(Model)

    • 應用程序的核心,用于處理應用程序數據邏輯部分
  • V(View)

    • 處理應用程序數據的顯示
    • 通常依據Model創建
  • C(Controller)

    • 處理用戶的交互
    • 從視圖讀取數據,控制用戶輸入,并向模型發送數據

M、V、C之間的通信


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

  • Controller與Model之間的通信

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

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

    • Controller對Model:

      • 通過API
    • C對V:

      • Outlet
    • V對C:

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

      • Notification,KVO

V與C之間通信的方式


  • 目標操作(target-action)

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

    • 為視圖中的某個控件設置代理,當控件被操作時發送相應的代理消息,執行相應的代理方法,實現View與Controller的通信
    • 如,tableView的代理
  • 數據源

    • Controller通過數據源將View需要的數據傳遞給View,實現Controller與View的通信

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平顺县| 阿坝县| 靖边县| 桃园市| 惠州市| 大同市| 彝良县| 包头市| 新兴县| 武鸣县| 高安市| 南昌市| 雷波县| 普宁市| 惠来县| 武隆县| 泽州县| 隆安县| 临城县| 隆回县| 霍林郭勒市| 淮滨县| 娱乐| 绩溪县| 芒康县| 保德县| 徐州市| 麻城市| 比如县| 万山特区| 青铜峡市| 获嘉县| 托克逊县| 宁南县| 方正县| 台北县| 金溪县| 原阳县| 安达市| 双牌县| 滕州市|