Skip to content
Free public beta until December 4, 2026: every course is open, no card needed. After that, the first chapter of each course stays free and full access is a one-time $39 ($19 for up to 100 founding members chosen for helpful feedback). Your progress is kept. How the beta works

decorator

A wrapper that adds behavior to an object while looking like the same kind of object.

A decorator implements the same interface as the object it wraps and adds behavior around calls; an adapter wraps an object to expose a different interface.

Examples

  • A CachingRatesClient that implements IRatesClient, wraps the real one, and remembers answers for a minute.

Read the full section →