Loading page…
An order's life, from placed to delivered or cancelled: why an if on a status string in every method stops scaling, how State gives each state one place, a class per state versus an enum with a transition table, who owns the transitions, when each design wins, how State differs from Strategy and boolean flags, and the thread-safety of check, change and refund.
You place a food order, and then you tap cancel.