Architecture & LLD Preview
State Pattern
Allow an object to alter its behavior when its internal state changes. The object will appear to change its class.
State pattern encapsulates states into separate classes and delegates behavior to the current state object.
Core Design Challenge
"How do we implement a finite state machine without a massive mess of conditional statements?"