iT邦幫忙

#finite state machine相關文章
共有 14 則文章
鐵人賽 Software Development DAY 22
From State Machine to XState 系列 第 22

技術 Day22 - 在 XState, 狀態機器裡無窮盡的狀態、 資料:Extended State and context and assign API - 2

問題延伸 1. 請問如何動態載入不同的 context ? 比如說我們這台狀態機想要給許多不同的店家共用,比如「綠洲酒吧」、「蘋果旗艦店」... 難道我需要一直...

鐵人賽 Software Development DAY 20
From State Machine to XState 系列 第 20

技術 Day20 - 在 XState 與 Side Effect 互動吧~ action API

1. Action 與 Side Effect 昨天,我們確認了狀態能被儲存起來,然而我們這個開門,只是狀態轉換成「開了」這個字串而已,我們沒有實際執行任何...

鐵人賽 Software Development DAY 19
From State Machine to XState 系列 第 19

技術 Day19 - Interpreting Machines - 2 :使用 interpret API

1. 寫好 Machine Config 傳入 createMachine API const doorMachine = createMachine({...

鐵人賽 Software Development DAY 13
From State Machine to XState 系列 第 13

技術 Day13 - 解決狀態大爆炸 - 1: Parallel States (平行式狀態)

以昨天的例子而言,我們的 input 有 [Invalid / Valid]、[Disabled / Enabled]、[Changed / Unchanged...

鐵人賽 Software Development DAY 12
From State Machine to XState 系列 第 12

技術 Day12 - 狀態機與現實世界的落差 - 2: State Explosion(狀態大爆炸)

回想一下至今認識過的狀態機範例裡,我們目前所見的,都是針對一個物體、物件的小小部分出發,比如 RPG 的移動模組,假設今天不只有移動,我們還需要攻擊的模組、技能...

鐵人賽 Software Development DAY 11
From State Machine to XState 系列 第 11

技術 Day11 - 狀態機與現實世界的落差 - 1: Action? Side Effect

既然我們已經理解、實作完基本的狀態機了,我們今天來多看看一些狀態圖,並且思索在現實世界中,我們還缺少甚麼東西,首先我們從簡單的開始,慢慢往下進行。 1.門閥開...

鐵人賽 Software Development DAY 10
From State Machine to XState 系列 第 10

技術 Day10 - 實作一個狀態機 - 3

我們昨天透過一個 object 描述一個狀態機的定義,還記得前天我們的 switch / case 做出的 transition function 嗎?tran...

鐵人賽 Software Development DAY 8
From State Machine to XState 系列 第 8

技術 Day08 - 實作一個狀態機 - 1

根據需求畫出狀態圖後 他們都有一個初始狀態 整個實體、物件或是對象,都有一系列不同的狀態們 還有一系列不同的事件,可能會導致狀態轉移 還有一張紀錄著什麼事件...

鐵人賽 Software Development DAY 7
From State Machine to XState 系列 第 7

技術 Day07 - Flowchart versus State Diagram 讓我們比一比

我們根據昨天的需求畫出以下兩張圖 1. Flowchart 我們先看看 Flowchart 圖中的白色 ◇ 代表邏輯判斷,藍色 ▢ 代表程式碼實作的內容、『執...

鐵人賽 Software Development DAY 6
From State Machine to XState 系列 第 6

技術 Day06 - 根據需求畫出 Flowchart 或是 State Diagram

今天嘗試將 2D RPG 角色移動模組根據規格畫出 Flowchart 和 State Diagram 規格 按下 ⇦、⇨ 可控制玩家移動 按下 B 是...

鐵人賽 Software Development DAY 5
From State Machine to XState 系列 第 5

技術 Day05 - 開始、結束與有限狀態機

昨天習得 事件 、 轉移 的概念後,讓我們來思考實作這個 transition,還需要什麼東西? transition('待付款', '收到帳款') ===...

鐵人賽 Software Development DAY 3
From State Machine to XState 系列 第 3

技術 Day03 - 個體、對象以及狀態

小回顧 Day01 - 緣起:怎麼了?為什麼?如何掌握過於自由的程式碼? 以訂單、RPG 角色的移動,這 2 個例子,描述在複雜的軟體應用、系統中,會面臨的挑...

鐵人賽 Software Development DAY 2
From State Machine to XState 系列 第 2

技術 Day02 - 觀察:自由的程式碼?有什麼蛛絲馬跡、現象?

自由的潛在風險 -( 問題發生的原因 ) 從前一天的故事及開發範例,我們發現隨著新需求的出現,我們必須回去修改既有的邏輯,這樣子的情形,並不符合開放封閉原則,也...

鐵人賽 Software Development DAY 1
From State Machine to XState 系列 第 1

技術 Day01 - 緣起:怎麼了?為什麼?如何掌握過於自由的程式碼?

“Any fool can write code that a computer can understand. Good programmers write...