Desenvolvimento a partir do MVC.

Java

12/06/2012

Estou desenvolvendo uma aplicação simples, mas gostaria de implementá-la usando MVC.

Classes existentes:
- Apresentação: Cliente.jsf, Telefone.jsf etc.
- Controle: ClienteMB, TelefoneMB etc.
- Entidade: Cliente, Telefone etc
- DAO: ClienteDAO, TelefoneDAO etc.

Pergunta: Mesmo a minha classe ClienteMB sendo simples, com os métodos Incluir, Alterar e Excluir
eu preciso de uma classe ClienteService(há apenas uma única linha de código que chama a classe ClienteDAO)?
Ou eu posso chamar o ClienteDAO a partir de ClienteMB sem a necessidade da criação da classe ClienteService(pois A Service neste exemplo seria muita simples: existe apenas uma única linha que chama a classe ClienteDAO)?

A criação das classes ClienteService e TelefoneService são obrigatórias e essencias a todo e qualquer projeto baseado
em MVC? Ou depende da complexidade de cada projeto? Uns usam e outros não usam?


public class ClienteMB{

private Cliente cliente;

public ClienteMB {
}

public String incluir(){
cliente = new Cliente();
cliente.setId(getCodigo());
cliente.setNome(getNomeCliente());

...
}

public String alterar(){
...
}



public String apagar(){
...
}
}


public class ClienteDAO {

public ClienteDAO {
}

public String incluir(){
...
}

public String alterar(){
...
}



public String apagar(){
...
}

}












Vocês podem esclarecer estas dúvidas?

Obrigado pela atenção.

Régis.

Régis Santos

Régis Santos

Curtidas 0

Respostas

Davi Costa

Davi Costa

12/06/2012

O ideal é que deixemos a regra de negócio específica da sua app nessa camada Service que vc citou.
Na DAO apenas o CRUD completo.

Se a sua app apenas faz CRUD sem regra de negócio, não vejo o pq dessa camada service a mais.
Mas cuidado para não deixar negócio na camada DAO, isso pode trazer problemas caso o sistema evolua, por isso se usa tanto o service. Porém se vc sabe previamente que não terá regras de negócios complexas (ou seja anada além de CRUDs básicos) você pode ficar sem a camada service

att Davi
GOSTEI 0
Régis Santos

Régis Santos

12/06/2012

Obrigado pela resposta!

Sua resposta muito contribuiu para a miha decisão.

Em meus projetos existiam mais ou menos 20% com necessidade de utilização de classes do tipo SERVICE.
A partir disto resolvi colocar classes do tipo SERVICE nas outras restantes para que o projeto inteiro já esteja
preparado para o futuro, ou melhor preparado para evoluir.

Régis.
GOSTEI 0
Davi Costa

Davi Costa

12/06/2012

Show de bola Régis!
Sucesso!

Att Davi
GOSTEI 0
Régis Santos

Régis Santos

12/06/2012

Obrigado!

Régis
GOSTEI 0
POSTAR