O primeiro padrão apresentado nesse capítulo foi o Command. Ele consiste no encapsulamento de uma operação como uma classe, em vez de sua representação através de um método. A partir dessa estrutura, é possível compor as classes dinamicamente com comandos, tornando possível a adição de novas operações. Outra possibilidade trazida por esse padrão é de armazenar os comandos já executados, dessa forma pode-se utilizá-los para a implementação de transações e auditoria, e até mesmo guardá-los para que possam ser desfeitos. Outros padrões para a adição de operações vistos nesse capítulo foram o Double Dispatch e o Visitor. Esses dois utilizam o recurso de delegar a execução, ou parte dela, para o objeto passado como parâmetro. Dessa forma, o comportamento é determinado pelo parâmetro passado, possibilitando a adição de novas operações a partir da criação de novas abstrações do tipo do parâmetro. Particularmente o Visitor é um padrão complicado e difícil de ser implementado, porém nas situações em que ele é aplicável, os ganhos na sua utilização em termos de reúso e manutenção podem ser imensos.
Comentários
Ainda não há comentários para esta questão.
Seja o primeiro a comentar!