短篇抒發 🧠 軟體開發思維

🚀採取行動才能改變狀態

許多讀者知道,我在開發 SwiftUI 專案時,幾乎都會搭配 TCA(The Composable Architecture) 這個框架。

SwiftUI 的畫面由狀態驅動。改變狀態,就會改變畫面。而 TCA 能把狀態管理得很好。這是因為,在 TCA 的設計上,任何狀態(State)修改,都只能在叫做 Reducer 的單元裡面執行。而要進到 Reducer,只能從發生行動(Action)開始。

用一句話來說:使用者的操作或系統事件 → ActionReducer 依照邏輯來改變 State → SwiftUI 的畫面更新。

這個設計是限制,也是它能把狀態管理做好的原因,因為你完全無法從外部去干擾狀態,一切都要從 Action 來觸發。

換句話說,要改變狀態,就必須從行動開始

某天我突然想到,人生不也是這樣嗎?

以下內容留給⟪13報+⟫會員。

閱讀狀態

尚未登入

已在 Patreon 成為⟪13報+⟫會員?請使用同一個 E-mail 登入。
還沒加入的朋友,請先到 Patreon 看方案。