外觀模式,不知道你是否會碰到這樣的場景,公司要開會了,由你負責布置會場,你需要做的工作有:
1.把窗簾拉下來。
2.擺好椅子。
3.降下投影幕布。
4.開啟投影儀。
5...............
太煩了,有時你甚至少做了一樣,別怕,如果有了外觀模式就可以高枕無憂了。簡單的說,外觀模式就是把1~5條甚至更多的操作抽象為乙個操作,那就是------------開會布置
在本例中,外觀模式就是把遊戲初始化的操作合併為乙個操作,game類中的gamestart。
此模式比較好理解,具體請see完整**喲。
測試**:
dotapatternlibrary.facade.game game = new dotapatternlibrary.facade.game();
game.gamestart();
完整**:
using
system;
using
system.collections.generic;
using
system.linq;
using
system.text;
using
dotacommon;
namespace
dotapatternlibrary.facade
}internal
class
herofactory
public
void
setskill()
public
void
maps()
}internal
class
botwildnpc
public
void
maps()
}internal
class
music
public
void
play()
}internal
class
terrain
public
void
maps()}}
DOTA版設計模式 組合
組合模式,本質上就是樹的一種 實現。把所有節點統一化,犧牲類的清晰性來使得遍歷簡化。遍歷依靠迭代器,請參考迭代器一章。uml圖 composite抽象類介面如下,包含孩子節點,增加孩子節點的方法,刪除孩子節點的方法,以及操作。public abstract class composite publi...
DOTA版設計模式 單件模式
單件模式,單件意味著唯一,我們建立的類的例項是唯一的。唯一的處理印表機,訊息佇列,登錄檔等等.uml圖 單件模式看來簡單,其實不然。包括什麼雙重加鎖 多執行緒要求 延遲例項化等等,具體在terrylee的blog上有詳細的描述,本文不再羅嗦。單件模式沒有公開的建構函式,要實現物件的例項化只能依靠靜態...
設計模式 模版設計模式
模版設計模式的概念或者定義 定義乙個操作中演算法的框架,而將一些步驟延遲到子類中,使得子類可以不改變演算法的結構即可重定義該演算法中的某些特定步驟。以前雖然經常在專案中使用模版設計模式,特別在baseactivity,basefragement,basefragementactivity,basea...