Dividir para Conquistar ?  XML
Índice dos Fóruns » Arquitetura de Sistemas
Autor Mensagem
Raven
Thread.start()
[Avatar]

Membro desde: 20/01/2004 20:08:47
Mensagens: 49
Offline

Ola Pessoal !
Em relação a arquitetura WEB com Struts, a parada é a seguinte:
Possuo um form de cadastro simples com as ações 'Incluir' , 'Excluir' e 'Alterar', tudo referente a mesma classe de negocio, imaginei primeiramente criar um Action do Struts para cada ação, mas agora me pergunto se não seira melhor criar um único Action e dentro dele chamar no classe de negocio o método da ação especifico..Que vc´s acham ??

So pra constar, tenho só 2 meses de desenvolvimento Java na Web

Abraços!

This message was edited 1 time. Last update was at 08/12/2004 17:28:17

[ICQ]
pcalcado
Moderador
[Avatar]

Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline

Use várias Ations. Usar uma só é acoplamento de controle.

[]s

Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay
[Email] [WWW] [Yahoo!] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Eu costumo usar apenas UMA Action para este caso. A sua Action do Struts teria que estender a classe DispatchAction.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Raven
Thread.start()
[Avatar]

Membro desde: 20/01/2004 20:08:47
Mensagens: 49
Offline

Hum...saquei, mas na Dispatch então eu estaria chamando as outras actions ou diretamente o objeto de negocio e seus métodos de inclusão/alteração e exclusão ?? Melhorando a pegunta, criaria os métodos necessários nela.

This message was edited 1 time. Last update was at 08/12/2004 17:52:59

[ICQ]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Na verdade entre o Action e as classes de negócio você deveria usar um Business Delegate.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Raven
Thread.start()
[Avatar]

Membro desde: 20/01/2004 20:08:47
Mensagens: 49
Offline

Mesmo acessando apenas uma classe Business ??
E esse delegate eu preciso cria-lo ?

This message was edited 1 time. Last update was at 08/12/2004 17:58:08

[ICQ]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

DispatchAction


Business Delegate


Classe de Negócio

This message was edited 1 time. Last update was at 08/12/2004 18:02:10


gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Raven
Thread.start()
[Avatar]

Membro desde: 20/01/2004 20:08:47
Mensagens: 49
Offline

Rapaz!!! Valeu ! Eu tava perguntado sobre o BD pq poderia ja ter alguma implementação dele pronta, mas pelo que vi é bem simples!!!

Muito Obrigado!!
Thanxs!!
[ICQ]
kuchma
Moderador
[Avatar]

Membro desde: 17/01/2003 19:36:16
Mensagens: 1231
Localização: Curitiba - PR
Offline

Para essas operacoes CRUD acho legal ter apenas uma Action tambem. Se puder utilizar a versao 1.2 do Struts, olhe a MappingDispatchAction, que ja agiliza o trampo: http://struts.apache.org/api/org/apache/struts/actions/MappingDispatchAction.html

Daniel, qual seria a funcao do BusinessDelegate nesse cenario? Ele atua apenas como um intermediario entre a Action e as Classes de Negocio repassando todas as solicitacoes Action --> Negocio? Que problema haveria de arquitetura se chamassemos o Negocio direto da Action?

Ou isso seria mais para utilizacao com EJB?


Marcio Kuchma

E tu, Belém-Efrata, pequena demais para figurar como grupo de milhares de Judá, de ti me sairá o que há de reinar em Israel, e cujas origens são desde os tempos antigos, desde os dias da eternidade. Mq 5:2, Miquéias, 750 AC aprox.
[WWW] [ICQ]
Jair Rillo Junior
Moderador
[Avatar]

Membro desde: 29/04/2003 21:19:53
Mensagens: 2524
Localização: São Paulo / Campinas
Offline

Eu entendo o Business Delegate (e sempre tento utilizá-lo) como um objeto entre as regras de negócios e o cliente (no caso uma Action do Struts). O Objetivo é caso haja uma alteração nas regras de negócios, o cliente não tenha muitas alterações. Isso é muito importante quando você tem vários clientes (Action do Struts, Action do Webwork, um Controller para projetos Swing e assim vai).

Jair Rillo Junior

http://www.jairrillo.com/blog | Twitter | SCJA, SCJP, SCWCD, SCBCD, IBM SOA Associate
pcalcado
Moderador
[Avatar]

Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline

Fora que seu clietne não rpecisa se estressar com RMI, JNDi, RemoteHome blahblabla... nossa, só isso vale o Pattern.

Tá, antes que o cv leia este tópico e coloque o comentário padrão #054 sobre IoC, falamos de um mundo imperfeito onde as pessoas cismam em usar EJB e JSP.

[]s

Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay
[Email] [WWW] [Yahoo!] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Acho que já responderam por mim. Valeu galera.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

Toda vez que voce usa Struts, Deus mata um bebe foca. Pense nas pobres foquinhas, e parem de usar esse lixo. Por favooooooooooooooooooor.
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

O maior anti-pattern de todos: cv.

UAhuahaua uAH uhA uHAuAH uAH AUh UHAua
Don´t take me wrong, dudeee!

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
louds
Moderador
[Avatar]

Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline

Um business delegate é um nome diferente para use-case facade ou role facade, dependendo da forma que você implementar o BD.


http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda
[ICQ]
 
Índice dos Fóruns » Arquitetura de Sistemas
Ir para:   
Powered by JForum 2.1.8 © JForum Team