《原神攻略》融化流羅莎莉亞出裝推薦

1. 命令(Command)

將一個請求封裝為一個物件,從而使得可以用不同的請求對客戶進行引數化;對請求排隊或記錄請求日誌,以及支援可撤銷的操作。

命令模式適用於以下幾種情況:

①抽象出待執行的動作以引數化某物件,此模式是過程語言中的回撥(callback)機制的一個面向物件的替代方式;

②在不同的時刻指定、排列和執行請求;

③支援取消操作;

④支援修改日誌,這樣當系統崩潰時,這些修改可以被重做一遍; ⑤用構建在原語操作上的高層操作構造一個系統。

責任鏈(Chain of Responsibility)

使多個物件都有機會處理請求,從而避免請求的傳送者和接收者之間的耦合關係。將這些物件連成一條鏈,並沿著這條鏈傳遞該請求,直到有一個物件處理它為止。責任鏈模式適用於以下幾種情況: ①有多個的物件可以處理一個請求,哪個物件處理該請求在執行時刻自動確定; ②在不明確指定接收者的情況下,向多個物件中的一個提交一個請求; ③可處理一個請求的物件集合應被動態指定。

觀察者(Observer)模式

定義物件間的一種一對多的依賴關係,當一個物件的狀態發生改變時,所有依賴於它的物件都得到通知並被自動更新。

觀察者適用於以下幾種情況:

①當一個抽象模型有兩個方面,其中一個方面依賴於另一個方面,將這兩者封裝在獨立地物件中以使它們可以各自獨立地改變和複用;

②當對一個物件的改變需要同時改變其他物件,而不知道具體有多少物件有待改變時;

③當一個物件必須通知其他物件,它又不能假定其他物件是誰,即:不希望這些物件是緊耦合的。

策略(Strategy)定義一系列的演算法,把它們一個個封裝起來,並且使它們可以相互替換。此模式使得演算法可以獨立於使用它們的客戶而變化

策略模式適用於以下幾種情況:

①許多相關的類僅僅是行為有異。

“策略”提供了一種用多個行為中的一個行為來配置一個類的方法;

②需要使用一個演算法的不同變體。例如,定義一些反應不同空間的空間/時間權衡的演算法。當這些變體實現為一個演算法的類層次時,可以使用策略模式;

③演算法使用客戶不座該知道的資料。可使用策略模式以避免暴露覆雜的、與演算法相關的資料結構;

④一個類定義了多種行為,並且這些行為在這個類的操作中以多個條件語句的形式出現,將相關的條件分支移入它們各自的Strategy類中,以代替這些條件語旬。

以上是 《原神攻略》融化流羅莎莉亞出裝推薦 的全部内容, 来源链接: utcz.com/yxgl/576423.html

回到顶部