| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/06/2007 16:48:37
|
Anderson Leite
Java Ninja
![[Avatar]](/images/avatar/ab81265d898ef7f38a3e95fc98c2a669.jpg)
Membro desde: 03/03/2005 09:53:07
Mensagens: 275
Offline
|
Pessoal,
Gostaria de saber como vcs costumam fazer coisas simples (CRUD).
Situação | usuário usa um checkbox para inserir/excluir alguma opção de usar um determinado serviço do site.
Modelo de dados | Os serviços disponiveis estao em um tabela. Uma outra tabela intermediária linka um usuário aos serviços que ele selecionou participar.
Aplicação | Inserção é feita via ajax.
Questao | Qual a melhor arquitetura para esse caso ?
A ) Dois métodos JS distintos (insert/delete) passam os parametros necessarios para um busines que possui um insertService e um deleteService. O business passa para o dao que contem os respectivos metodos tambem.
B ) Java script passa apenas um parametro para um busines generico, handleService por exemplo. Este chama um insert/delete do dao.
C ) JS chama um bean persistente que atualiza a base do jeito que o objeto chegou pra ele.
O caso está bem simplificado. Eu normalmente faço pela forma (A). Acho que cada método está fazendo exatamente o que se propõe. A alternativa (B) vai usar mais "if", e acho que foge da orientação a objetos. Quanto a (C) acho que só pode ser usada pra casos mais simples.
Não é questão de prova, nem trabalho de faculdade, etc. Também sei que "cada caso é um caso". Se você puder colaborar com idéias e exemplos de como você faz, ou mesmo a melhor solução, gostaria da sua opnião.
|
 |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/06/2007 08:34:10
|
alberto_ribeiro
JavaEvangelist
![[Avatar]](/images/avatar/b36ed8a07e3cd80ee37138524690eca1.jpg)
Membro desde: 01/07/2005 11:15:19
Mensagens: 351
Localização: SP
Offline
|
Bom dia, acredito que a opção A estaria mais correta... você disse tudo o método tem que ser coeso, nada de ficar fazendo if, case.....
|
Sun Certified Programmer for Java 1.5 |
|
|
 |
|
|
|
|