Decorator

Fala ae pessoal !!

Bom, queria saber um bom exemplo do Decorator Pattern. Mas queria um exemplo que fosse mais serio que não seja de “café” com vários acompanhantes.

Vlw

Grande abraco

[quote=“naim”]Mas queria um exemplo que fosse mais serio que não seja de “café” com vários acompanhantes.
[/quote]
não entendi o esquematozóide :roll:

mas bem, as classes Wrapper de Java são exemplos de decorator. :joia:

Acho que isso é um exemplo.
Suponha que vc criou uma tag lib pra um input do tipo texto. Ele tem vários atributos, como por exemplo onclick, onblur, size, maxlength etc e tal. Seu código ficaria mais ou menos assim:

 <prefixo:input_text onclick='xxx' onblur='xxxx' size='xx'></prefixo:input_text>

Tudo bem, mas e se daqui a pouco surgir uma nova versão e colocarem um novo tipo de atributo, por exemplo, onXYZ? Você podia ter um input padrão com vários decoradores, por exemplo:

 <prefixo:input_text>
    <prefixo:atributo nome='onclick'>xxx</prefixo:atributo>
    <prefixo:atributo nome='onXYZ'>aaa</prefixo:atributo>
 </prefixo:input_text>

Como você pode ver, assim que você precisar de um novo atributo, era só colocar na tag prefixo:atributo.
Acho que isso é um exemplo de decorator, por favor me corrijam se eu estiver errado.

[]'s
carisio

[quote]não entendi o esquematozóide

mas bem, as classes Wrapper de Java são exemplos de decorator. [/quote]

Matheus !! Isso foi um exemplo do Livro "Head First Design Patterns"
nesse livro o exemplo dele é uma cafeteria que tem varios tipos de acompanhamentos pra café !! café com leite, com limao etc…
ae ele ilustra a ideia do Decorator dessa forma !

Só que são exemplos fracos, queria algo mais “real” proximo do ambiente de trabalho !

abraços…

aqui tem mais

Não sei se ajuda, mas no link abaixo tem um exemplo do uso do decorator:

http://www.patternizando.com.br/2011/01/padrao-de-projeto-decorator-uma-aplicacao-real-em-java/