Adding some additional responsibility to an object dynamically (in combination), the Decorator pattern is more flexible in terms of adding functionality than generating subclasses (inheritance)...