隨筆-1  評論-2  文章-6  trackbacks-0
            2008年1月23日
          Strategy--定義一系列的算法,把它們一個個封裝起來,并且使它們可相互替換。本模式使得算法可獨立于使用它的客戶而變化。

          參與者

          Strategy
          •  -- 定義所有支持的算法的公共接口。Context使用這個接口來調用某ConcreteStrategy定義的算法。
          ConcreteStrategy(具體策略)
          •  -- 以Strategy接口實現英雄模范具體算法。
          Context(上下文)
          • --用一個ConcreteStrategy對象來配置。
          • --維護一個對Strategy對象的引用。
          • --可定義一個接口來讓Strategy訪問它的數據。

          適用性
          1. 當存在以下情況時使用Strategy模式
          2. 許多相關的類僅僅是行為有異。“策略”提供了一種用多個行為中的一個行為來配置一個類的方法。
          3. 需要使用一個算法的不同變體。
          4. 算法使用了客戶不應該知道的數據。可使用策略模式以避免暴露復雜的、與算法相關的數據結構。



          posted @ 2008-01-23 10:52 Sam Wang 閱讀(304) | 評論 (2)編輯 收藏
            2008年1月22日
          Composite模式描述了如何使用遞歸組合,使得用戶不必對這些類進行區別。

          Composite的關鍵是一個抽象類,它既可以代表圖元,又可以你表圖元的容器。

          參于者

          Component
          • --為組合中的對象聲明接口。
          • --在適當的情況下,實現所有類共有接口的缺省行為。
          • --聲明一個接口用于訪問和管理Composite的子組件。
          • --(可選)在遞歸結構中定義一個接口,用于訪問一個父部件,并在合適的情況下實現它。
          Leaf
          • --在組合中表示葉節點對象,葉節點沒有子節點。
          • --在組合中定義圖元對象的行為。
          Composite
          • --定義有子部件的那些部件的行為。
          • --存儲子部件
          Client
          • --通過Component接口操縱組合部件的對象。

          適用性

          你想表示對象的部份-整體層次結構。
          你希望用戶忽略組合對象與單個對象的不同,用戶將統一地使用組合結構中的所有對象。

          posted @ 2008-01-22 18:04 Sam Wang 閱讀(125) | 評論 (0)編輯 收藏
            2007年12月31日
          • User Case Diagram -- 用例圖


          • Component Diagram -- 組件圖


          • Class Diagram -- 類圖


          • Activity Diagram -- 行為圖


          • Collaboration Diagram -- 協作圖


          • Deployment Diagram -- 開發圖


          • Sequence Diagram -- 順序圖


          • State Diagram -- 狀態圖



          posted @ 2007-12-31 16:34 Sam Wang 閱讀(570) | 評論 (0)編輯 收藏
          僅列出標題  
          主站蜘蛛池模板: 浑源县| 镇赉县| 鄂托克旗| 石台县| 开原市| 兰州市| 诸城市| 沂水县| 嘉义市| 自治县| 鞍山市| 徐州市| 连江县| 新乡市| 海林市| 望江县| 灌南县| 定日县| 江孜县| 房产| 乌审旗| 喀什市| 牙克石市| 离岛区| 靖西县| 玉林市| 晋江市| 龙胜| 舞阳县| 扬中市| 当雄县| 巴彦县| 鲁甸县| 浑源县| 白玉县| 察哈| 鄂伦春自治旗| 平阳县| 沈丘县| 慈利县| 德昌县|