狀態模式(State Pattern) 事物狀態

2021-08-09 16:24:21 字數 570 閱讀 5833

​ 前陣子被大師帶著寫介面,還裝逼學了一下react(這裡是我的react部落格)。在傳統的開發中,通常 ui 上諸多狀態變化會讓維護應用的狀態變得很困難和複雜。react 通過檢測狀態變化來每次重新渲染虛擬 dom 節點,然後按需自動更新真實節點,這種方式可以讓開發人員可以簡單地專注在應用的狀態上。

​ 在react中,資料控制ui,資料變化其實可以看做變數狀態的改變。這就引出了我們今天要講的狀態模式。

狀態模式(state pattern)允許物件在內部狀態改變它的行為,物件看起來好像修改而它的類。

​ 在很多情況下,乙個物件的行為取決於它的乙個或多個變化的屬性,這些屬性我們稱之為狀態,這個物件稱之為狀態物件。對於狀態物件而已,它的行為依賴於它的狀態,比如你要預訂房間,那麼只有當該房間為空閒時你才能預訂,你想入住該房間也只有當你預訂了該房間或者該房間為空閒時。對於這樣的乙個物件,當它在於外部事件產生互動的時候,其內部狀態就會發生改變,從而使得他的行為也隨之發生改變。

周一補上

變化多端的狀態模式 State Pattern

現在寫字樓越建越高,碼農上個班不但要擠個地鐵,還要擠個電梯。電梯的執行簡單有這麼幾個狀態 執行 停止 關閉 開啟,電梯想要正常的執行,就必須得遵循一定的規則,例如執行的時候不能開門,開門狀態不能執行。按照平常的邏輯,分別建立open,close,run,stop四個方法,方法裡通過switch當前的...

設計模式 狀態模式

狀態模式 當乙個物件的內在狀態改變時允許改變其行為,這個物件看起來像是改變了其類。狀態模式主要解決的是當控制乙個物件狀態轉換的條件表示式過於複雜時的情況,把狀態的判斷邏輯轉移到表示不同狀態的一些列類當中,可以把複雜的判斷邏輯簡化。當乙個物件的行為取決於它的狀態,並且它必須在執行時刻根據狀態改變它的行...

設計模式 狀態模式

1.概述 當乙個物件的內在狀態改變時允許改變其行為,這個物件看起來像是改變了其類。2.解決的問題 主要解決的是當控制乙個物件狀態轉換的條件表示式過於複雜時的情況。把狀態的判斷邏輯轉移到表示不同的一系列類當中,可以把複雜的邏輯判斷簡單化。3.模式中的角色 3.1 上下文環境 context 它定義了客...