A PROMOÇÃO DE INVERNO ESTÁ AQUI!
Decorator

Decorator em Swift

O Decorator é um padrão estrutural que permite adicionar novos comportamentos aos objetos dinamicamente, colocando-os dentro de objetos wrapper especiais.

Usando decoradores, você pode agrupar objetos inúmeras vezes, pois os objetos de destino e os decoradores seguem a mesma interface. O objeto resultante terá um comportamento de empilhamento de todos os wrappers.

Complexidade:

Popularidade:

Exemplos de uso: O Decorator é bastante padrão no código Swift, especialmente nos códigos relacionados a fluxos.

Identificação: O Decorator pode ser reconhecido por métodos de criação ou construtores que aceitam objetos da mesma classe ou interface que uma classe atual.

The following examples are available on Swift Playgrounds.
Kudos to Alejandro Mohamad for creating the Playground version.

Decorator em outras linguagens

Decorator em C# Decorator em C++ Decorator em Go Decorator em Java Decorator em PHP Decorator em Python Decorator em Ruby Decorator em Rust Decorator em TypeScript