<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### 8.4.2 模型與視圖 復雜應用程序經常可以分解成兩個部分:核心邏輯和用戶界面。程序的核心邏輯部分稱 為模型(model),它負責為應用問題建模,管理應用問題的數據和行為,并對來自用戶界面 的數據請求或數據更新指令進行響應。程序的用戶界面部分稱為視圖(view),它負責顯示模 型的當前數據狀態,響應用戶的交互動作。模型和視圖是相互獨立的,可以分開設計和測試, 從而簡化程序結構、降低設計難度,這稱為模型-視圖(MV)設計方法。 模型與視圖之間的橋梁稱為控制器(controller):用戶通過用戶界面發出交互動作,從而 觸發事件處理器(回調函數)做出相應處理,導致模型的狀態發生改變;模型狀態的改變又 導致視圖的更新,從而向用戶輸出結果。如果把模型和視圖之間的控制器考慮進去,這種方 法也稱為模型-視圖-控制器(MVC)方法(圖 8.25)。 ![](https://box.kancloud.cn/2016-02-22_56cafce6743f8.png) 圖 8.25 模型-視圖體系結構 用 MV 方法設計程序時,定義模型不需要用到視圖中的元素,定義視圖也不需要用到模 型中的數據,從而可以分別設計和測試。另外,同一模型可以使用不同的視圖來達到不同的 目的,例如可以先設計一個基于文本界面的簡單視圖來測試模型的正確性,確定模型沒有問 題后再去設計更美觀易用的 GUI 視圖。在實際開發中,經常將用戶界面封裝成界面對象,這樣隨時可以通過替換不同的界面對象來改變模型的外觀和用戶體驗。 模型設計與視圖設計在很多方面都不一樣。為應用問題建立模型是“智力密集型”的工作,需要創造性的算法設計;而構造視圖則是“勞動密集型”的工作,需要用戶友好和美觀。 模型的建立很難借助自動化的設計工具,而圖形界面的構建大部分都可利用設計工具自動或 半自動地完成。 > ① 有的環境可能在退出事件循環時就自動關閉根窗口。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看