State machine memodelkan sistem sebagai himpunan states yang berhingga ditambah transitions yang diizinkan di antara mereka. Daripada berjuang dengan flag boolean independen, Anda menentukan dengan tepat state mana saja yang ada dan transitions mana yang legal — membuat impossible states tidak dapat direpresentasikan.
The problem: boolean soup
[isLoading, setLoading] = ();
[isError, setError] = ();
[isSuccess, setSuccess] = ();
