Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera beleza
Quais seria a responsabilidade de um objeto service ? por exemplo UserService o que ele iria fazer ?
alguém poderia me ajudar
Beleza gabriel
Mas no caso de um controlador login que recebe uma request, e ele empurra essa request para um service user fazer alguma coisa. então essa service user irá delegar as autenticação, verificação, loggers, regras de negocio em geral de usuário ? O Service então poderia dizer que cuida de toda a regra de negocio de usuário ?
Normalmente o Controller utiliza, indiretamente, um Service através de um Model.
Independente de quem delega pra quem, na arquitetura MVC, as regras de negócio estão no model. Service normalmente é uma tier do model.
Gabriel neste post: http://forum.imasters.com.br/topic/543725-checar-login-em-sistema-mvc/ está uma dúvida relacionado a minha. neste post você usou como exemplo uma model chamada de userModel que faz a autenticação e verificação de login. Então eu poderia em vez de fazer essas tarefas(autenticação, verificação e etc..) diretamente na Model User, a Model User iria delegar estás tarefas a um Service. Isto poderia ser feito ?
Sim, perfeitamente.
Conforme há explicado no exemplo do link, é uma das muitas maneiras de se obter o mesmo resultado. Em ambos os exemplos que eu postei, as regras de negócio estão explicitamente na camada Model, em uma ou mais tiers. O que mudou foi apenas o fluxo de execução.
O único ponto a se ressaltar, é a injeção de dependência. Eu coloquei em ênfase que não iria abordar esse assunto, visto que o link adicionado possui exemplos e explicações mais que o suficientes.
As dependências, no meu exemplo, foram criadas no Controller, pois eu não estaria utilizando um dependency manager.
A única coisa que posso dizer é que UserService provê algum serviço do usuário. Mas isso depende do contexto.
Se for olhar nos exemplos do Zend 2, Service é utilizado para gerenciar um Mapper.
Introducing Services and the ServiceManager