Nowadays, optionality is everywhere. Typically, before purchasing an item, one can choose among multiple configurations, models, and kinds available.
The decorator pattern will allow you to implement a dynamic code structure where the new behaviors can be applied to the basic object.
It increases your optionality.
Continue reading Decorator pattern in Kotlin – Design Patterns