Een state machine modelleert een systeem als een eindige set van states plus de toegestane transitions daartussen. In plaats van onafhankelijke boolean flags te beheren, definieer je precies welke states bestaan en welke transitions legaal zijn — waardoor onmogelijke states niet kunnen voorkomen.
Het probleem: boolean soup
[isLoading, setLoading] = ();
[isError, setError] = ();
[isSuccess, setSuccess] = ();
