搶先一步
VMware 提供培訓和認證,以加速您的進展。
了解更多我們很高興宣布 Spring Statemachine 1.0.0.M1 的第一個里程碑版本發布。 這篇部落格文章也將作為這個新專案的介紹。
雖然撰寫一篇介紹最新尖端技術的部落格文章會很棒,但有限狀態機存在的时间比這篇文章的讀者(爺爺,你可以放下你的手了)還要久。 有些技術來來去去,然後還有一些根本的技術會留下來,僅僅因為它們被證明是有效的。
每個程式設計師很可能已經在其應用程式中使用某種狀態的概念。 當應用程式根據該標誌做出決策時,擁有一個簡單的布林標誌本身就是一個簡單的狀態機。 然後,程式設計師會投入更多的標誌、枚舉以及一堆 if/else/break 結構,這對於簡單的用例來說是完全沒問題的。
將狀態和應用程式邏輯烘烤在一起的問題是,隨著時間的推移,當應用程式變得更加複雜時,程式碼通常開始看起來像一盤義大利麵,並且每次程式設計師更改一部分時,其他一些部分就會損壞。
Spring Statemachine 是一個框架,供應用程式開發人員將 狀態機 概念與 Spring 應用程式一起使用,旨在提供以下功能:
在某些事情可能非同步發生的應用程式中,適當的狀態處理非常重要。 這在雲端環境中尤其重要,因為在雲端環境中很容易在並發方面遇到麻煩。 Spring Statemachine 是狀態處理的另一種風味,例如 Spring Cloud Cluster 專案旨在透過其諸如分散式鎖和領導者選舉等功能提供。
專案頁面包含一個簡單的範例,可讓您了解 Spring Statemachine 的工作方式。 我們還製作了一些 範例,這些範例在我們的參考文件中進行了更詳細的說明。 這些範例與 Spring Boot 一起打包,並使用 Spring Shell 來啟動互動式 shell,您可以使用該 shell 與狀態機進行互動。 這是一種無需重新編譯即可查看不同行為的絕佳方式。
我們很樂意透過參與 Spring Statemachine 專案或僅在 GitHub 上建立問題或功能請求,來了解人們的想法。