完賽心得
很快的今天是寫作松的第七天也是最後一天,很高興能夠完賽,在七天的時間內簡單的了解GoF的23種設計模式,但這只是起點並不是終點,設計模式是要實際應用於程式當中,所以跟coding一樣是沒有終點的,在參加寫作松的過程很高興能夠和先進交流討論。
備忘錄模式
- 將一個物件的內部狀態儲存在另一個備忘錄物件中,備忘錄物件可用來還原物件狀態。
- 備忘錄模式其實是備份與存檔的概念。
蠅量級模式
- 大量物件共享一些共同性質,以降低系統負荷。
- 一個蠅量級類別的內部性質,即為所有物件共用的性質。
- 一個蠅量級類別的外部性質,即為隨著需求可以變換的性質。
拜訪者模式
- 用不同的拜訪者使集合中的元素行為與元素類別分離。
- 在JAVA中,集合可透過泛型裝進同一個父類別的物件,但缺點是物件的行為被泛型綁死了,為了使類別的物件在集合中還能保有自己的特性,使用拜訪者將物件的行為進行封裝。
單元測試
在設計模式的最後,我們來探討一個問題,就是要如何測試一段程式碼功能是否正確,有沒有返回我們預期的值,這時就需要用到單元測試,debug雖可以達到一樣的功能,不過較為麻煩,且還須人工監看輸出結果是否正確。
Juint單元測試工具
Juint為一個單元測試工具,讓開發者簡單地進行單元測試,只要寫好程式碼,執行後就可以立即得到結果。
總整理
創建型模式
- 簡單工廠模式
- 工廠模式
- 抽象工廠模式
- 單例模式
- 原型模式
- 建造者模式
結構型模式
- 表象模式
- 合成模式
- 轉接器模式
- 代理模式
- 裝飾模式
- 蠅量級模式
- 橋梁模式
行為型模式
- 命令模式
- 觀察者模式
- 策略模式
- 樣板模式
- 走訪器模式
- 狀態模式
- 責任鏈模式
- 解譯器模式
- 中介者模式
- 備忘錄模式
- 拜訪者模式