項目設計之---------- 設計模式的應用(模式的集合,不像之前每個模式分開寫了)

來源:互聯網
上載者:User

標籤:blog   http   使用   資料   2014   類   

考慮到每個模式寫一篇文章太零碎,現在寫在一起好了

1、觀察者模式的應用

一個觀察者模式,該模式要求使用者改變自己的配置的時候,相應的監聽者更新、儲存資料等
ConfigChangeListener是觀察者父類,其子類是具體觀察者,ConfgChangeSubject是抽象通知者,ConnonSiteConfigPanel是具體通知者

 

2、建造者模式的應用:

建造模式的指揮者,而網站操作抽象類別是建造者父類,具體實作類別是具體建造者,而對網站(Site)類的操作則是最終需要的產品

 

3、橋接模式

 

橋接模式,處理網站操作類與配置這兩個緯度的變化,之前本來打算用繼承,但考慮到優先要考慮彙總/組合,還是用了橋接模式

 

4、命令模式:

用命令模式處理任務的分配,方便放到隊列,取消和重做等。任務是命令,而網站操作者是真正的任務執行者,TaskDispatchable則是任務的管理者即命令管理者,它會增加或去除任務,分配任務,把任務(命令)分配到具體的網站操作類去執行

 

5、享元模式

 用享元模式解決建立海量對象問題,網站操作類與網站類是內部狀態,而網站帳號(SiteAccount)是外部狀態SiteOperaterFactory是工廠 、SiteOperaterAbstract是介面 SiteOperaterAbstract具體類是實作類別 

 

當然,一個工程並不是越多模式應用越好,應用太多的模式會使得工程複雜難讀,所以量情況而定,小的項目就不要搞得太複雜。這裡推薦一個架構spring

由於用spring管理類與類的依賴關係,因此省去了很多模式的應用,比如操作網站的子類可以用簡單工廠+反射、dao與service之間的關係使用抽象原廠模式管理以方便資料庫的切換。spring本來就是個巨大的工廠。

 

覺得我一定有理解得不對的地方,望高手斧正,如果有不詳細的地方也可以指出

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.