• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            eXile 的專欄

            TDD for GUI

             

            兩個原則:
                 1)MVP模式:Model - View - Presenter 
                 2)  Presenter 優先原則

            一)  MVP模式

            MVP是MVC(Model-View-Controller)的變種。

                  基本模式:View ←← Presenter →→ Model

                  事件通知:View →→ Presenter ←← Model

                 View:GUI界面布局;對Model和Presenter一無所知;代碼比較簡單,不含任何邏輯處理;

                 Model:進行邏輯處理;對View和Presenter一無所知;提供狀態和公共方法;當狀態變化時觸發事件;

                 Presenter:控制用戶處理流程;除了構造函數沒有公共方法,無狀態;一個窗體對對應一個Presenter;向Model和View訂閱事件,對于View可應用EventFilter來過濾多余事件。

            說明: 事件機制是實現MVP松耦合的關鍵。


            二)Presenter 優先流程

             1. 創建用戶事例;

             2. 創建Presenter,利用Model和View的Mock或stub來實現用戶事例;

             3. 創建Model;

             4. 創建View。

             

            TDD流程:

            1.  創建 Presenter stub類, 在構造器中帶有兩個參數:Model接口和View接口;

            2.  創建Model接口和View接口的Mock 測試對象

            3.  對所有用戶事例:

                 a) 分析用戶事例對于View的影響,添加View接口支持;

                 b) 分析用戶事例對于Model的影響,添加Model接口支持;

                c)  對于新的接口方法添加Mock對象支持;

                d)  TDD循環:

                                  i. 寫出一個對于Presenter的測試,通過View或Model的事件或動作來驅動應用處理;

                                  ii. 對于Model的狀態和View的狀態進行Assertion判定;

                                 iii. 實現Presenter的私有方法

                                 iv. 測試通過。

            4.      創建一個最小化的用戶界面實現。

             

            本文根據http://download.microsoft.com/download/c/3/d/c3d745d1-c081-4021-aa2c-5839c6ea3380/DVL354.ppt 整理而成。轉載請表明原貼地址。 http://www.shnenglu.com/eXile/。

             

            posted on 2009-06-22 13:15 eXile 閱讀(2137) 評論(0)  編輯 收藏 引用 所屬分類: 編程與設計

            導航

            <2009年6月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            統計

            常用鏈接

            留言簿(18)

            隨筆分類

            隨筆檔案

            服務器編程

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            2020国产成人久久精品| 亚洲午夜久久久| 亚洲中文字幕久久精品无码APP| 精品国产乱码久久久久软件| 久久久午夜精品| 国产成人精品白浆久久69| 中文字幕无码免费久久| 久久人妻少妇嫩草AV无码专区| 日本强好片久久久久久AAA| 久久国产精品久久| 久久99精品国产麻豆蜜芽| 人妻精品久久久久中文字幕69| 久久久无码精品亚洲日韩蜜臀浪潮 | 国产免费久久精品99久久| 精品人妻伦九区久久AAA片69| 亚洲国产日韩欧美久久| 久久久久久毛片免费播放| 国产精品成人精品久久久| 久久精品一本到99热免费| 精品久久久久久中文字幕| 精品久久久久成人码免费动漫| 久久久免费精品re6| 亚洲AV伊人久久青青草原| 国产亚洲欧美精品久久久| 亚洲欧美成人久久综合中文网 | 少妇内射兰兰久久| 久久黄视频| 国产精品岛国久久久久| 久久精品国产亚洲AV久| 精品久久久久久无码中文字幕 | 国产精品免费看久久久| 久久夜色精品国产www| 国产国产成人精品久久| 中文字幕日本人妻久久久免费| 久久久噜噜噜久久| 国产精品久久久久一区二区三区| 久久人人爽人人爽人人AV| 人妻精品久久久久中文字幕69| 亚洲欧美日韩精品久久亚洲区 | 99久久成人国产精品免费| 久久精品亚洲中文字幕无码麻豆|