• <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>

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            對于界面,要封閉,要開放什么

            1、對于界面之流,他要Get什么和如何Display我不管,可以給它對象和接口,他可以自己組合成自己的顯示,顯示永遠都不是業務邏輯的部分;

            2、對于界面之流,他要Change什么我要管,不能讓他調用能夠改變模型的接口,因為改變肯定是業務邏輯的部分,界面中直接調用方法來改變,意味著業務邏輯存在耦合到界面中的部分,這是不允許的。

            3、總結,任何Change都必須通過UserCommand,讓UserCommand這個抽象層來完成這個事情,一個參與者會有一系列的命令接口。

            ==============================================================================

            備注:后來的一點領悟,任何改變和執行都是業務邏輯的部分。如果能夠確保界面只能夠調用Get?,可以通過const來解決。

            a、界面得到一個const object* 或者const object&;

            b、const對象或者指針,只能調用const方法,const 方法意味著no change

            posted on 2008-09-12 15:33 肥仔 閱讀(335) 評論(0)  編輯 收藏 引用 所屬分類: 編程思想

            久久久久一级精品亚洲国产成人综合AV区| 久久综合九色综合久99| 日产精品久久久久久久| 国产精品岛国久久久久| 一本大道加勒比久久综合| 久久精品综合一区二区三区| 亚洲另类欧美综合久久图片区| 老色鬼久久亚洲AV综合| 国产国产成人久久精品| 波多野结衣久久精品| 久久综合九色综合欧美狠狠| 久久只有这里有精品4| 久久91精品久久91综合| 久久精品中文无码资源站| 色综合久久综精品| 伊人久久大香线蕉av一区| 久久久91人妻无码精品蜜桃HD| 亚洲中文字幕无码久久精品1 | 亚洲va久久久久| 国产精品久久久久久影院| 久久午夜福利无码1000合集| 精品久久久久久国产牛牛app | 久久99精品久久久久久水蜜桃| 久久精品国产亚洲AV影院| 久久精品国产精品亚洲| 久久综合久久综合久久| 欧洲人妻丰满av无码久久不卡| 日本高清无卡码一区二区久久| 99久久精品免费| 久久最近最新中文字幕大全 | www亚洲欲色成人久久精品| 中文成人无码精品久久久不卡 | 久久久婷婷五月亚洲97号色| 亚洲性久久久影院| 波多野结衣久久一区二区| 伊人久久大香线蕉综合网站| 热RE99久久精品国产66热| 综合久久一区二区三区 | 久久久久夜夜夜精品国产| 国产午夜精品久久久久免费视 | 污污内射久久一区二区欧美日韩|