Usuário com melhor resposta
Camada de regras no WebService

Pergunta
-
Bom dia.
Tive uma reunião hoje com um gerênte de TI e ele está querendo colocar toda a camada de regras em um WebService.
Basicamente seria o seguinte, temos várias aplicações e o que for comum a todas elas estamos pensando em colocar em um WebService como por exemplo a autenticação de logins (Colocariamos uma função onde se passa o usuário e a senha e a função retorna se o login é válido ou não).
Gostaia da opinião de vocês, é viável fazer isto? Colocar a camada de regras em um WebServices?
Riderman
Respostas
-
A regra de negócio tem que ficar nas entidades de negócio. Se elas vão ser expostas através de um web service, ok, isso é só uma opção de acesso.
Uma pergunta: não é mais fácil fazer um componente e compartilhar ele entre as aplicações, se o único objetivo é reaproveitar código?
Giovanni Bassi, Microsoft MVP, MCSD, MCPD, CSM, Arquiteto de software - http://www.giovannibassi.com- Marcado como Resposta Giovanni Bassi - MVPMVP, Moderator quarta-feira, 9 de setembro de 2009 12:47
-
padrão FAÇADE = http://en.wikipedia.org/wiki/Facade_pattern
DDD = http://domaindrivendesign.org/resources/what_is_ddd
POCOs = +/- isto: classes que não dependem de interfaces ou abstrações para funcionar.
Alessandro- Marcado como Resposta Giovanni Bassi - MVPMVP, Moderator quarta-feira, 9 de setembro de 2009 12:47
Todas as Respostas
-
Estou pensando em fazer o mesmo, mas em WCF.
Tenho uma aplicação que será desenvolvida em WPF e alguns módulos em Silverlight ou ASP.NET MVC, pensei na camada de regras em WCF pra facilitar esse acesso.
Aproveito o seu tópico pra tirar tbm a minha dúvida, já que é bem parecido :P -
A regra de negócio tem que ficar nas entidades de negócio. Se elas vão ser expostas através de um web service, ok, isso é só uma opção de acesso.
Uma pergunta: não é mais fácil fazer um componente e compartilhar ele entre as aplicações, se o único objetivo é reaproveitar código?
Giovanni Bassi, Microsoft MVP, MCSD, MCPD, CSM, Arquiteto de software - http://www.giovannibassi.com- Marcado como Resposta Giovanni Bassi - MVPMVP, Moderator quarta-feira, 9 de setembro de 2009 12:47
-
Giovanni, particulamente eu não gostei da idéia por n motivos
- Segurança está muito comprometida uma vez que WebServices não implementão segurança
- A performance será afetada
- A dificuldade de utilização destes componentes iram ser maiores
- O custo será mais auto uma vez que teremos que hospedar este serviço
Isto é o que estive pensando agora, garanto que se estudarmos direito podemos pensar em mais motivos.
Esta foi uma idéia de um dos gerêntes de TI da empresa em que trabalho.
Outra coisa, no meu ponto de vista webservices devem ser utilizados para integração entre aplicações, não como modelo do negócio.
Riderman -
Penso que, como o Bassi já disse, as regras de negócio têm que ficar nas entidades de negócio, que se for usada a abordagem DDD se forem POCO´s é melhor ainda.
Assim sendo deve-se usar WEBSERVICES como uma camada adicoinal (FACADE) para acesso as regras de negócio.
Acho que assim fica uma estrutura legal, concordam?
Att,
Alessandro
Alessandro -
-
padrão FAÇADE = http://en.wikipedia.org/wiki/Facade_pattern
DDD = http://domaindrivendesign.org/resources/what_is_ddd
POCOs = +/- isto: classes que não dependem de interfaces ou abstrações para funcionar.
Alessandro- Marcado como Resposta Giovanni Bassi - MVPMVP, Moderator quarta-feira, 9 de setembro de 2009 12:47