Comando (padrón de deseño)

Na programación orientada a obxectos, Comando é un padrón de deseño no que un obxecto é usado para representar e encapsular toda a información para chamar un método máis adiante no tempo. Esta información inclúe o nome do método, o obxecto que contén o método e valores para os parámetros do método.

Intención

Este padrón permite solicitar unha operación a un obxecto sen coñecer realmente o contido desta operación, nin o receptor real da mesma. Para facelo posible encapsúlase a petición como un obxecto, facilitando ademais a parametrización dos métodos.

Tres termos sempre asociados co padrón Comando son cliente, invocador e receptor. O cliente instancia o obxecto comando e lle proporciona información necesaria para chamar o método máis tarde. O invocador decide cando se debe chamar o método. O receptor é unha instancia da clase que contén o código do método.

Usando obxectos de comando é máis sinxelo construír compoñentes xerais que necesitan delegar, secuenciar ou executar chamadas a métodos nun momento elixido por eles sen necesidade de coñecer o propietario do método ou os seus parámetros.