Arquitetura Mvc

Olá pessoal tenho uma duvida um tanto simples…

Numa arquit. MVC, no caso:

Minhas telas serião a: View
Uma classe que valide um cpf por exemplpo seria a: Controller
E que tipo de classe seria a Model???
No caso poderia ser uma classe de getters e setters ou uma inserção no banco de dados???

E isso serviria para o Swing “JSE”…

Valeu…

http://fragmental.com.br/wiki/index.php?title=MVC_e_Camadas

Ótimo artigo, dê uma lida nele.

ps. vou adiantando não responde diretamente sua pergunta, mas vai “abrir” sua cabeça.

dá uma lida aki tbm, e tem uma explicação de Swing

no caso tela são view sim…
Uma classe que valide um cpf por exemplpo seria a: Controller não isso entra na Model…
controle seriam as parte de componentes q eventos da classe swing… mas dá uma lida no artigo que ele explica mto bem…
abr

Model é o tipo de classe onde vc literalmente modela algo para se trabalhar dentro de um sistema…
um exemplo bobo, mas que te ajuda a entender é um cadastro de clientes:
sua classe Model seria a própria classe Cliente.java, por exemplo…
nessa classe vc só vai definir os atributos de um cliente, como:

  • nome
  • telefone
  • email

claro que esse é um exemplo bem didático, mas acho que deu para ter uma noção melhor…

Valeu pela Ajuda Galera…

Respostas bem claras, valeu mesmo…

Pelo certo então a classe que representa MODEL do MVC seria algo do tipo abaixo…???


package logico;

public class Usuarios {
	
	private String usuario;

    private String senha;
	
	public void setUsuario(String usuario) {
       this.usuario = usuario;
       
	   
   }

   public String getUsuario() {
       return this.usuario;
	   
   }
   
   public void setSenha(String senha) {
       this.senha = senha;
       
   }

   public String getSenha() {
       return this.senha;
	   
   }

}

Sim, só toma cuidado com nome de classes e pacotes.

Boa Noite. Também tenho uma dúvida sobre MVC. Quando submeto na interface (View), um cadastro de cliente por exemplo, com alguns campos para o banco de dados. Eu primeiro gravo os dados em um objeto do Model, depois faço validação e envio para o banco no Controller? Ou eu valido os campos que vem da interface no Controle, e depois disso coloco em objeto no model e submeto para o banco?

Felipe.

[quote=mfellipe]Boa Noite. Também tenho uma dúvida sobre MVC. Quando submeto na interface (View), um cadastro de cliente por exemplo, com alguns campos para o banco de dados. Eu primeiro gravo os dados em um objeto do Model, depois faço validação e envio para o banco no Controller? Ou eu valido os campos que vem da interface no Controle, e depois disso coloco em objeto no model e submeto para o banco?

Felipe.[/quote]
Não há sentido nenhum em validar os dados após gravá-los no banco.

Pessoal, já li uma vez não lembro onde, mas com certeza foi bem marcante pra o entendimento da abordagem MVC. O exemplo foi o seguinte:

Ambiente: Um Video-cassete (hoje podemos imaginar um DVD player), uma televisão, e um controle remoto.

Qual o papel do video-cassete? ler a fita e enviar para a visao, neste caso a TV. ( obs: o video nem conhece a visao, apenas conhece a maneira de enviar as informações, a interface e o protocolo).
e o controle remoto…? tem um conjunto de ações (actions) que manda para o video cassete.
Alem da função de ler a fita o video cassete tb tem um controlador de ações, ne isso?
Outro ponto, o video cassete tb possui um estado que é refletido no seu visor. Mas isso nao significa a View do sistema.

eu poderia ficar escrevendo um monte de detalhe deste ambiente, mas no momento acho q ja é o bastante, e deixo q vcs completem, ou discordem desta relação.

[]´s

Humberto Lima.

[quote=TegÊ]
Valeu pela Ajuda Galera…

Respostas bem claras, valeu mesmo…

Pelo certo então a classe que representa MODEL do MVC seria algo do tipo abaixo…???

[code]

package logico;

public class Usuarios {

private String usuario;

private String senha;

public void setUsuario(String usuario) {
   this.usuario = usuario;

}

public String getUsuario() {
return this.usuario;

}

public void setSenha(String senha) {
this.senha = senha;

}

public String getSenha() {
return this.senha;

}

}

[/code][/quote]

Não. Mil vezes não.
Essa classe representa no máximo uma entidade do sistema.
Primeiro, essa classe não lança eventos para a view e/ou para o controlador. Isso é essencial para se possa falar de MVC. Alías essa classe não tem noção que existem outras classes. Dificilmente será algo no padrão MVC. Se vc usa Swing, o proprio swing é a sua View. ( a sua, não a dele). O controlador são os modelos do Swing, como o TableModel. É com eles que vc analiza e reage aos eventos do usuário. O modelo são seus serviços de dominio e/ou façades de dominio. As informações que trafegam dentro destas classes não são nada no MVC.
Se vc usa web, com struts por exemplo, a sua view é o proprio struts o seu controlador é que vc constroi dentro dos objetos action do struts e o seu modelo são igualmente os serviços e façades do seu dominio.