padrão command

2 respostas
C

Boa Noite, senhores, estava verificando o padrão command e está meio confuso para min, então vou postar um exemplo bem basico, e queria ver se vocês teriam como me ajudar, só dizendo se está errado ou não.
estou inventando um exemplo qualquer que veio em mente, quero refatorar as classes de modelodo sistema e não as ações feitas e gui.

exemplo se eu tiver um sistema que cadastra pessoas.
a pessoa tem que ser tratada pelo sexo dela, e depedendo do sexo, vai retornar informações diferentes.
ficaria assim
criaria uma interface command com o método execute()
uma classe Pessoa que seria o receptor, vai executar o método dependendo do objeto enviado para ele , terá uma classe PessoaSexoMasculino e PessoaSexoFeminino que iriam ter uma associação com a classe Pessoa, as mesmas iriam ter um método execute que irá enviar para o objeto pessoa as solicitações do que ele tem que executar. O mesmo também terá uma classe que irá invocar SimplesControleDePessoal, tem uma associação da interface command, e recebe o objeto command, PessoaSexoFeminino ou PessoaSexOmasculino conforme ações que o usuario fazer na classe da gui.

está certo a idéia do padrão command?

obrigado.

2 Respostas

fantomas

Minha opinião.

Eu acho que vc entendeu o pattern Command, seu problema (acredito que é também da maioria de nós) na verdade é como e onde aplicar o(s) pattern(s); isso sem falar em identificar qual pattern é mais adequado ao nosso problema. Algumas vezes vc pode nem encontrar um pattern adequado ou até ter que utilizar uma derivação de um deles ou mais ainda, uma combinação de patterns.

Mesmo assim eis aqui um link sobre este pattern http://www.javaworld.com/javaworld/javatips/jw-javatip68.html?page=1 que traz um bom exemplo sobre ele.

flws

C

ainda estou com duvidas. é melhor aplicar o padrão command nas milhas classes view, aonde o usuario vai fazer a ação?
então o command, retiraria um pouco da funcionalidade das classes controle?

Criado 12 de março de 2009
Ultima resposta 22 de mar. de 2009
Respostas 2
Participantes 2