Cadeia de Resposibilidade dos padrões de Design Versus decorador
Como o padrão da cadeia de Responsabilidade difere do padrão do decorador..?
2 answers
Pensem nos decoradores como uma unidade em camadas na qual cada camada faz sempre Pré/Pós-processamento. Cadeia de responsabilidade é mais como uma lista vinculada, e geralmente 1 coisa lida processamento.
O padrão da cadeia de Responsabilidade permite que múltiplas coisas lidem com um evento, mas também lhes dá a oportunidade de terminar a cadeia em qualquer momento.
Cenário:
Pense num pedido de serviço (normalmente acesso administrativo ao seu portátil ), que precisa de ser aprovado pelo seu gerente, Director e vice-presidente. Neste caso, o padrão do decorador agiria apenas como se em cada nível haveria apenas Comentários de cada um deles e finalmente você começaria uma saída. Assim, o Gerente diria "aprovado e encaminhado", Simlarly Diretor "aprovado e encaminhado" e finalmente VP "aprovado". E a sua saída final seria a combinação de todos os 3 comentario.
Nota: a cadeia não vai quebrar, não importa se o seu pedido foi aprovado ou desaprovado.Na cadeia de responsabilidade, em cada fase a pessoa tem a Autoridade de aprovar ou rejeitar. E se em qualquer nível o pedido é rejeitado, então o seu pedido não prossegue para o próximo nível, em vez disso, apenas termina com o resultado. Espero que isto ajude:)