State
Learn about a behavioral design pattern: the state pattern.
The state pattern is a behavioral pattern that is a clear example of reification in software design, making the concept of our domain problem an explicit object rather than just a side value (for example, using strings or integer flags to represent values or managing state).
Working with an example
When studying unit testing, we had an object that represented a merge
request, and it had a state associated with it (open
, closed
, and so on). We used an enumeration to represent those states because, at that point, they were just data holding a value (the string representation of that particular state). If they had to have some behavior, or the entire merge
request had to perform some actions depending on its state and transitions, this would not have been enough.
Get hands-on with 1400+ tech skills courses.