= Solution
\b[<Class inheritance> offers a compact specialized implementation]: the scaled sum is also a `SumChannel` and can be used where that concrete type is required, while its inherited state handling is reused directly.
\b[The decorator supports run-time <object composition> over any `Channel` implementation], including an already constructed stateful <software object>, without editing or subclassing each concrete <software class>. Its extra <software object> and delegation are a small cost. The two approaches therefore serve different reuse needs; the wrapper need not pretend to be the concrete sum-channel <software class>.
Back to article page