Historically, the painter was responsible for the mixing of the paint; keeping a ready supply of pigments, oils, thinners and driers. The painter would use his experience to determine a suitable mixture depending on the nature of the job. In modern times, the painter is primarily responsible for preparation of the surface to be painted, such as patching holes in drywall, using masking tape and other protection on surfaces not to be painted, applying the paint and then cleaning up.
The decorator pattern is a design pattern that allows you to wrap an object such that it will appear to execute a given behavior in many different ways at different points in program execution. This is especially useful when you want an object to have different behaviors at but are unable to mutate the object. The decorator pattern is a useful way to implement dynamic behavior without needing an extended inheritance-based class hierarchy. To use the decorator pattern you need four elements: a component interface; a concrete component; a decorator abstraction; and, a concrete decorator. The interface sets the contract for both component and decorator behavior, the decorator abstraction contains a pointer to some concrete component, and the concrete decorators wrap a concrete component and override behavior if desired.
Categories: English 2-syllable wordsEnglish terms with IPA pronunciationEnglish terms with audio linksEnglish words suffixed with -er (agent noun)English terms derived from Middle FrenchEnglish lemmasEnglish nounsEnglish countable nounsEnglish terms with obsolete sensesen:NauticalAmerican EnglishEnglish agent nounsEnglish terms with multiple etymologiesen:Artistsen:People