《原神攻略》融化流羅莎莉亞出裝推薦
阿新 • • 發佈:2022-05-25
1. 命令(Command)
將一個請求封裝為一個物件,從而使得可以用不同的請求對客戶進行引數化;對請求排隊或記錄請求日誌,以及支援可撤銷的操作。
命令模式適用於以下幾種情況:
①抽象出待執行的動作以引數化某物件,此模式是過程語言中的回撥(callback)機制的一個面向物件的替代方式;
②在不同的時刻指定、排列和執行請求;
③支援取消操作;
④支援修改日誌,這樣當系統崩潰時,這些修改可以被重做一遍; ⑤用構建在原語操作上的高層操作構造一個系統。
責任鏈(Chain of Responsibility)
使多個物件都有機會處理請求,從而避免請求的傳送者和接收者之間的耦合關係。將這些物件連成一條鏈,並沿著這條鏈傳遞該請求,直到有一個物件處理它為止。責任鏈模式適用於以下幾種情況: ①有多個的物件可以處理一個請求,哪個物件處理該請求在執行時刻自動確定; ②在不明確指定接收者的情況下,向多個物件中的一個提交一個請求; ③可處理一個請求的物件集合應被動態指定。
觀察者(Observer)模式
定義物件間的一種一對多的依賴關係,當一個物件的狀態發生改變時,所有依賴於它的物件都得到通知並被自動更新。
觀察者適用於以下幾種情況:
①當一個抽象模型有兩個方面,其中一個方面依賴於另一個方面,將這兩者封裝在獨立地物件中以使它們可以各自獨立地改變和複用;
②當對一個物件的改變需要同時改變其他物件,而不知道具體有多少物件有待改變時;
③當一個物件必須通知其他物件,它又不能假定其他物件是誰,即:不希望這些物件是緊耦合的。
策略(Strategy)定義一系列的演算法,把它們一個個封裝起來,並且使它們可以相互替換。此模式使得演算法可以獨立於使用它們的客戶而變化
策略模式適用於以下幾種情況:
①許多相關的類僅僅是行為有異。
“策略”提供了一種用多個行為中的一個行為來配置一個類的方法;