Comando (padrão de desenho): Difference between revisions

From Wiki**3

No edit summary
Line 1: Line 1:
{{TOCright}}
{{TOCright}}
O padrão comando permite encapsular um comando ou pedido num objecto. Assim, os clientes podem ser parametrizados com comandos variados e os comandos podem ser manipulados para atingir vários fins: é possível atrasar a sua execução, colocá-los em filas de espera e registar a sua execução. É ainda possível suportar a execução da inversão das acções das operações relativas a um comando (''undo'').
O padrão comando permite encapsular um comando ou pedido num objecto. Assim, os clientes podem ser parametrizados com comandos variados e os comandos podem ser manipulados para atingir vários fins: é possível atrasar a sua execução, colocá-los em filas de espera e registar a sua execução. É ainda possível suportar a execução da inversão das acções das operações relativas a um comando (''undo'').


== Estrutura ==
== Estrutura ==
Line 10: Line 10:
[[Image:command-dpcd.png|600px]]
[[Image:command-dpcd.png|600px]]


===Diagrama de sequência===
===Diagrama de sequência===


As colaborações entre os intervenientes são as que figuram no seguinte diagrama de sequência:
As colaborações entre os intervenientes são as que figuram no seguinte diagrama de sequência:


[[Image:command-dpsd.png|450px]]
[[Image:command-dpsd.png|450px]]

Revision as of 03:01, 12 November 2008

O padrão comando permite encapsular um comando ou pedido num objecto. Assim, os clientes podem ser parametrizados com comandos variados e os comandos podem ser manipulados para atingir vários fins: é possível atrasar a sua execução, colocá-los em filas de espera e registar a sua execução. É ainda possível suportar a execução da inversão das acções das operações relativas a um comando (undo).

Estrutura

Diagrama de classes

O padrão comando tem a seguinte estrutura de classes:

Command-dpcd.png

Diagrama de sequência

As colaborações entre os intervenientes são as que figuram no seguinte diagrama de sequência:

Command-dpsd.png

Exemplo

Banco, Conta, Titular (aplicação bancaria).