我正在尋找一種高級結構的方式來開發我的軟件(對於Android來說,但這並不重要,我相信)。我的軟件由來自傳感器,用戶交互,遠程消息和計時器事件的事件驅動。如果我不能監督什麼樣的投入組合會導致問題,我恐怕會變得一團糟。設計多種輸入軟件
狀態機會很好,但似乎有太多可能的狀態。作爲新手,我確實在各處實現設計模式。但是我對整體設計感到迷茫。我如何給所有的「事件」提供結構以保持流入我的應用程序?
我正在尋找一種高級結構的方式來開發我的軟件(對於Android來說,但這並不重要,我相信)。我的軟件由來自傳感器,用戶交互,遠程消息和計時器事件的事件驅動。如果我不能監督什麼樣的投入組合會導致問題,我恐怕會變得一團糟。設計多種輸入軟件
狀態機會很好,但似乎有太多可能的狀態。作爲新手,我確實在各處實現設計模式。但是我對整體設計感到迷茫。我如何給所有的「事件」提供結構以保持流入我的應用程序?
您可能想了解機器人軟件如何處理此問題。機器人面臨類似的挑戰。
「太多州」的評論僅僅反映了你自己的觀察,這是一團糟。
在一個好的設計中,你可以在多個獨立的有限狀態機中分解系統。 20狀態系統可能更好地由4狀態和5狀態系統表示。
例如,您的情況下,您可能能夠將所有輸入重構爲單個輸入隊列。這個隊列將擁有自己的狀態(空,部分滿,滿),與進一步發生的處理無關。