如果在程序員.stackexchange上提問,請移動它或通知我。當需要按照明確的順序執行某些步驟時,狀態機是否是適當的設計?
想象一個程序,其唯一目的是用傳感器測量溫度。有兩個輸入,傳感器和用戶(用戶可以按下放棄按鈕)。
程序啓動時,必須滿足某些條件。假設傳感器的溫度不得高於x。如果條件滿足,則程序進入下一步,否則將通知用戶確保滿足條件。
一旦滿足,用戶將看到接下來要做的事情,比如「現在將傳感器粘貼到要測量的對象中」。 程序現在測量。假設這個過程需要的不僅僅是傳感器的快照,還需要一些相當複雜的過濾等。一旦滿足了某些標準,用戶就被告知下一步該做什麼。
在某些時候,用戶正在被呈現結果。 用戶可以決定在任何時候中止整個事情(回去開始或關閉)。
爲什麼我在這方面掙扎呢,如果在某個時候引入了另一個步驟,或者刪除了某個步驟,但它們將始終遵循相同的工作流程。我在新程序的開始,我想創建一個可維護的系統。
林不知道如果一個狀態機是一個很好的解決方案,或者如果我完全誤解了一個狀態機是什麼或者有一個更簡單的解決方案。