--
Você recebeu esta mensagem porque faz parte do grupo .Net Architects hospedado no Google Groups.
Para postar envie uma mensagem para dotnetar...@googlegroups.com
Para sair do grupo envie uma mensagem para dotnetarchitec...@googlegroups.com
Para mais opções visite o grupo em http://groups.google.com/group/dotnetarchitects?hl=pt-br
> From: edmilson hora
> Sent: Thursday, April 05, 2012 12:31 PM
> To: dotnetar...@googlegroups.com
> Subject: Re: [dotnetarchitects] Re: DDD - Camada de Aplica��o e inje��o de
> depend�ncia
>
>
> Desde que entendi o conceito de Interfaces na OOP gostei de pensar na
> Interface como pertencente �s Classes que a Implementam e n�o �s Classes
> que a consomem.
> Logicamente uma interface pode ser consumida por diversas classes e muitas
> delas podem n�o ter nada em comum al�m do fato de consumirem aquela
> interface. J� as classes que implementam as interfaces geralmente tem
> mais em comum que �s que consomem, as que implementam normalmente fazem
> parte de um sub-set de classes pois sua caracter�stica mais marcante � o
> fato de implementarem os m�todos ou terem as propriedades ditadas pela
> Interface. Sendo assim, eu sempre me refiro � Interfaces tipo:
> IProdutoRepository como Interface de Infra apesar dela estar declarada
> no Dom�nio.
>
> Outros podem discordar e alegar que a Interface IProdutoRepository � do
> Dom�nio pois ela esta declarada l� e pode ser implementada em qualquer
> outro lugar inclusive dentro do Dom�nio ou fora da Infra, o que acham??
>
> --
> Voc� recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> dotnetarchitec...@googlegroups.com
> Para mais op��es visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
Lemol-C
...não paro até chegar lá...
Participe en la XVI Convencion Cientifica de Ingenieria y Arquitectura del 26 al 30 de noviembre de 2012. La Habana, Cuba: http://ccia.cujae.edu.cu
Consulte la enciclopedia colaborativa cubana. http://www.ecured.cu
> From: Igor
> Sent: Thursday, April 05, 2012 12:22 PM
> To: dotnetar...@googlegroups.com
> Subject: [dotnetarchitects] Re: DDD - Camada de Aplica��o e inje��o de
> depend�ncia
>
> Estamos falando de DDD?
> Se sim, esque�a que o controller parece a camada de apresenta��o, pois ele
> n�o �.
> N�o os confundam. Como eu disse, se voc� vai querer fazer um software
> focado no dominio, o que � o mais importante?
> O mais importante � proteger o seu dominio, da� que vem o conceito de
> isola-lo. Blindar o dominio � uma maneira de protege-lo.
>
> Como eu irei usar DataAnnotation nas minhas entidades do dominio se eles
> tem que estar isoladas? N�o faz sentido.
>
> Como eu disse tamb�m ali em cima, eu uso das viewmodels para n�o levar as
> minhas entidades para a vis�o, e se eu quiser usar DataAnnotation por
> exemplo eu uso nos meus viewmodels, assim n�o mexendo no meu dominio.
Com camada de Services, queres dizer camada de Aplica��o?
> From: Igor
> Sent: Thursday, April 05, 2012 2:54 PM
> To: dotnetar...@googlegroups.com
> Subject: Re: [dotnetarchitects] Re: DDD - Camada de Aplica��o e inje��o de
> depend�ncia
>
> Ent�o, � relativo isso... Ele � parecido somente quando for para comandar
> execu��es, mas de resto ele n�o tem todas as caracteristicas da camada de
> aplica��o.
>
> Se for um projeto pequeno (pequeno mesmo), nem nada mirabulante eu at�
> consideraria que ele fosse a camada de apresenta��o. Mas a� n�o procuraria
> usar DDD.
>
> Olha, eu uso a camada de aplica��o como um fa�ade, e tbm para coordernar
> execu��es e tal, e pq eu n�o posso usar o Controller do MVC? Simplesmente
> pq a aplica��o que eu desenvolvo tem 3 plataforma (digamos assim). Ent�o
> eu tenho uma desktop, uma web e um mobile. Que usam a mesma camada
> Application. Essa minha application (pra confundir um pouco mais) lembra
> bastante a camada de Services do DDD.
>
>
"The application services in the sample application are responsible for driving workflow and coordinating transaction management (by use of the declarative transaction management support in Spring). They also provide a high-level abstraction for clients to use when interacting with the domain. These services are typically designed to define or support specific use cases. See BookingService or HandlingEventService.
In some situations, e.g. when dealing with graphs of lazy-loaded
domain objects or when passing services' return values over network
boundaries, the services are wrapped in facades. The facades handle ORM
session management issues and/or convert the domain objects to more
portable Data Transfer Objects) that can be tailored to specific use cases. In that case, we consider the DTO-serializing facade part of the interfaces layer. See BookingServiceFacade for an example."
No caso eu uso ViewModel em vez de DTO.
--
Você recebeu esta mensagem porque faz parte do grupo .Net Architects hospedado no Google Groups.
Para postar envie uma mensagem para dotnetar...@googlegroups.com
Para sair do grupo envie uma mensagem para dotnetarchitec...@googlegroups.com
Para mais opções visite o grupo em http://groups.google.com/group/dotnetarchitects?hl=pt-br
Se voce est� achando que � regra de dominio, ent�o provavelmente tinha que
ser/estar um servi�o de dominio.
Atenciosamente,
Leza Morais Lutonda, Lemol-C
http://lemolsoft.webs.com
http://github.com/lemol
@lemolsoft on twitter
>
> From: Fernando Mondo
> Sent: Sunday, April 15, 2012 1:30 AM
> To: dotnetar...@googlegroups.com
> Subject: Re: [dotnetarchitects] Re: DDD - Camada de Aplica��o e inje��o de
> depend�ncia
>
> Voltei com mais indaga��es...
>
> confesso que n�o entendi sobre o que o igor e o edmilson afirmaram de
> viewmodel na camada de aplica��o..
>
> mas enfim, a minha d�vida inicial eu resolvi com o uso de factory.
>
> Atualmente o que eu tenho classes da aplica��o que se parecem com isso:
>
> public class LiberarContrato
> {
> public LiberarContrato(Cliente cliente,Contrato contrato, IRepositorio,
> ILog){...}
>
> public void Liberar(string usuario, string senha)
> {
> try{
> _unidadeTrabalho.IniciarTrasacao();
> _provedorApi.CriarUsuario(usuario, senha);
> _contrato.TornarAtivo();
> _repositorioContrato.Add(_contrato);
> _notificador.EnviarEmail(_cliente);
> _unidadeTrabalho.Salvar();
> }
> catch(exception e)
> {
> _unidadeTrabalho.RollBack();
> _log.Gravar(e);
> }
> }
>
> }
>
> Fica a d�vida ent�o: Deveria esta classe ser um servi�o do Dom�nio, j� que
> eu tenho uma regra de negocio aqui dentro (ex: toda libera��o exige criar
> um usuario numa api externa, tornar o contrato ativo e entiar email ao
> cliente)?
>
> Outra: deveria Dominio (ou Aplica��o) possuir a interface IProvedorApi j�
> que el� � que usa (sabendo que eu vou implement�-la na infra)?
>
>
>
> Em 5 de abril de 2012 15:56, Igor <oro...@gmail.com> escreveu:
>
> O MVC todo � parte da camada de Interface, ou User Interface.
> E no outro eu quis dizer servi�os da camada de aplica��o. ;)
>
> Imagina assim, eu tenho dois projetos um WPF e um MVC certo? N�o posso
> assumir que o C do MVC ser� a camada de aplica��o.
> Logo MVC � s� User Interface e o WPF tbm. E quem coordena � a
> Application.
>
> Esse explica��o est� no site e � bem legal.
>
> "The application services in the sample application are responsible for
> driving workflow and coordinating transaction management (by use of the
> declarative transaction management support in Spring). They also provide
> a high-level abstraction for clients to use when interacting with the
> domain. These services are typically designed to define or support
> specific use cases. See BookingService or HandlingEventService.
>
> In some situations, e.g. when dealing with graphs of lazy-loaded domain
> objects or when passing services' return values over network boundaries,
> the services are wrapped in facades. The facades handle ORM session
> management issues and/or convert the domain objects to more portable
> Data Transfer Objects) that can be tailored to specific use cases. In
> that case, we consider the DTO-serializing facade part of the interfaces
> layer. See BookingServiceFacade for an example."
>
> No caso eu uso ViewModel em vez de DTO.
>
>
>
> --
> Voc� recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> mailto:dotnetarchitects%2Bunsu...@googlegroups.com
> Para mais op��es visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
>
> --
> Voc� recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> dotnetarchitec...@googlegroups.com
> Para mais op��es visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
Não entendí bem a lógica (essa nomenclatura me confunde :( ), mas, pelo
que percebo, parte é Serviço de Aplicação e uma parte estaria em um
Serviço de Dominio. Mas como disse, não entendí a lógica...
Se voce está achando que é regra de dominio, então provavelmente tinha que
ser/estar um serviço de dominio.
Atenciosamente,
Leza Morais Lutonda, Lemol-C
http://lemolsoft.webs.com
http://github.com/lemol
@lemolsoft on twitter
>
> From: Fernando Mondo
> Sent: Sunday, April 15, 2012 1:30 AM
> To: dotnetar...@googlegroups.com
> Subject: Re: [dotnetarchitects] Re: DDD - Camada de Aplicação e injeção de
> dependência
>
> Voltei com mais indagações...
>
> confesso que não entendi sobre o que o igor e o edmilson afirmaram de
> viewmodel na camada de aplicação..
>
> mas enfim, a minha dúvida inicial eu resolvi com o uso de factory.
>
> Atualmente o que eu tenho classes da aplicação que se parecem com isso:
>
> public class LiberarContrato
> {
> public LiberarContrato(Cliente cliente,Contrato contrato, IRepositorio,
> ILog){...}
>
> public void Liberar(string usuario, string senha)
> {
> try{
> _unidadeTrabalho.IniciarTrasacao();
> _provedorApi.CriarUsuario(usuario, senha);
> _contrato.TornarAtivo();
> _repositorioContrato.Add(_contrato);
> _notificador.EnviarEmail(_cliente);
> _unidadeTrabalho.Salvar();
> }
> catch(exception e)
> {
> _unidadeTrabalho.RollBack();
> _log.Gravar(e);
> }
> }
>
> }
>
> Fica a dúvida então: Deveria esta classe ser um serviço do Domínio, já que
> eu tenho uma regra de negocio aqui dentro (ex: toda liberação exige criar
> um usuario numa api externa, tornar o contrato ativo e entiar email ao
> cliente)?
>
> Outra: deveria Dominio (ou Aplicação) possuir a interface IProvedorApi já
> que elá é que usa (sabendo que eu vou implementá-la na infra)?
> O MVC todo é parte da camada de Interface, ou User Interface.
> E no outro eu quis dizer serviços da camada de aplicação. ;)
>
> Imagina assim, eu tenho dois projetos um WPF e um MVC certo? Não posso
> assumir que o C do MVC será a camada de aplicação.
> Logo MVC é só User Interface e o WPF tbm. E quem coordena é a
> Application.
>
> Esse explicação está no site e é bem legal.
>
> "The application services in the sample application are responsible for
> driving workflow and coordinating transaction management (by use of the
> declarative transaction management support in Spring). They also provide
> a high-level abstraction for clients to use when interacting with the
> domain. These services are typically designed to define or support
> specific use cases. See BookingService or HandlingEventService.
>
> In some situations, e.g. when dealing with graphs of lazy-loaded domain
> objects or when passing services' return values over network boundaries,
> the services are wrapped in facades. The facades handle ORM session
> management issues and/or convert the domain objects to more portable
> Data Transfer Objects) that can be tailored to specific use cases. In
> that case, we consider the DTO-serializing facade part of the interfaces
> layer. See BookingServiceFacade for an example."
>
> No caso eu uso ViewModel em vez de DTO.
>
>
>
> --
> Você recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> mailto:dotnetarchitects%2Bunsu...@googlegroups.com
> Para mais opções visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
>
> --
> Você recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> dotnetarchitec...@googlegroups.com
Lemol-C
...não paro até chegar lá...
Participe en la XVI Convencion Cientifica de Ingenieria y Arquitectura del 26 al 30 de noviembre de 2012. La Habana, Cuba: http://ccia.cujae.edu.cu
Consulte la enciclopedia colaborativa cubana. http://www.ecured.cu
--
Você recebeu esta mensagem porque faz parte do grupo .Net Architects hospedado no Google Groups.
Para postar envie uma mensagem para dotnetar...@googlegroups.com
Para sair do grupo envie uma mensagem para dotnetarchitec...@googlegroups.com
Para mais opções visite o grupo em http://groups.google.com/group/dotnetarchitects?hl=pt-br
>
> From: Fernando Mondo
> Sent: Sunday, April 15, 2012 12:52 PM
> To: dotnetar...@googlegroups.com
> Subject: Re: [dotnetarchitects] Re: DDD - Camada de Aplica��o e inje��o de
> depend�ncia
>
> eu tambem acho que estou misturando servi�o de dominio com aplica��o pois
> pelo que eu andei lendo a camada de aplica��o s� iria iniciar a transa��o
> e dar o saveChanges ou rollback + gravar log.
>
> e ent�o eu teria um servi�o de Dominio +- assim:
>
> public void ServicoLiberacao(){
> _provedorApi.CriarUsuario(usuario, senha);
>
> _contrato.TornarAtivo();
> _repositorioContrato.Add(_contrato);
> _notificador.EnviarEmail(_cliente);
>
> }
>
> mas da� eu teria uma camada de aplica��o pequena demais, e no livro do
> Evans ele ainda diz que notificar por email � uma responsabilidade da
> Aplica��o.
>
> talvez seja por isso que o igor e o edmilson usam o controller da camada
> de apresenta��o como camada de aplica��o....
>
>
> Em 15 de abril de 2012 02:55, Lemol Lutonda <lez...@fecrd.cujae.edu.cu>
> escreveu:
>
>
> N�o entend� bem a l�gica (essa nomenclatura me confunde :( ), mas, pelo
> que percebo, parte � Servi�o de Aplica��o e uma parte estaria em um
> Servi�o de Dominio. Mas como disse, n�o entend� a l�gica...
>
> Se voce est� achando que � regra de dominio, ent�o provavelmente tinha
> que
> ser/estar um servi�o de dominio.
>
>
> Atenciosamente,
>
> Leza Morais Lutonda, Lemol-C
> http://lemolsoft.webs.com
> http://github.com/lemol
> @lemolsoft on twitter
> >
> > From: Fernando Mondo
> > Sent: Sunday, April 15, 2012 1:30 AM
>
> > To: dotnetar...@googlegroups.com
> > Subject: Re: [dotnetarchitects] Re: DDD - Camada de Aplica��o e
> inje��o de
> > depend�ncia
> >
>
> > Voltei com mais indaga��es...
> >
> > confesso que n�o entendi sobre o que o igor e o edmilson afirmaram de
> > viewmodel na camada de aplica��o..
> >
> > mas enfim, a minha d�vida inicial eu resolvi com o uso de factory.
> >
> > Atualmente o que eu tenho classes da aplica��o que se parecem com
> isso:
> >
> > public class LiberarContrato
> > {
> > public LiberarContrato(Cliente cliente,Contrato contrato,
> IRepositorio,
> > ILog){...}
> >
> > public void Liberar(string usuario, string senha)
> > {
> > try{
> > _unidadeTrabalho.IniciarTrasacao();
> > _provedorApi.CriarUsuario(usuario, senha);
> > _contrato.TornarAtivo();
> > _repositorioContrato.Add(_contrato);
> > _notificador.EnviarEmail(_cliente);
> > _unidadeTrabalho.Salvar();
> > }
> > catch(exception e)
> > {
> > _unidadeTrabalho.RollBack();
> > _log.Gravar(e);
> > }
> > }
> >
> > }
> >
> > Fica a d�vida ent�o: Deveria esta classe ser um servi�o do Dom�nio, j�
> que
> > eu tenho uma regra de negocio aqui dentro (ex: toda libera��o exige
> criar
> > um usuario numa api externa, tornar o contrato ativo e entiar email ao
> > cliente)?
> >
> > Outra: deveria Dominio (ou Aplica��o) possuir a interface IProvedorApi
> j�
> > que el� � que usa (sabendo que eu vou implement�-la na infra)?
> >
> >
> >
> > Em 5 de abril de 2012 15:56, Igor <oro...@gmail.com> escreveu:
> >
> > O MVC todo � parte da camada de Interface, ou User Interface.
> > E no outro eu quis dizer servi�os da camada de aplica��o. ;)
> >
> > Imagina assim, eu tenho dois projetos um WPF e um MVC certo? N�o
> posso
> > assumir que o C do MVC ser� a camada de aplica��o.
> > Logo MVC � s� User Interface e o WPF tbm. E quem coordena � a
> > Application.
> >
> > Esse explica��o est� no site e � bem legal.
> >
> > "The application services in the sample application are responsible
> for
> > driving workflow and coordinating transaction management (by use of
> the
> > declarative transaction management support in Spring). They also
> provide
> > a high-level abstraction for clients to use when interacting with the
> > domain. These services are typically designed to define or support
> > specific use cases. See BookingService or HandlingEventService.
> >
> > In some situations, e.g. when dealing with graphs of lazy-loaded
> domain
> > objects or when passing services' return values over network
> boundaries,
> > the services are wrapped in facades. The facades handle ORM session
> > management issues and/or convert the domain objects to more portable
> > Data Transfer Objects) that can be tailored to specific use cases. In
> > that case, we consider the DTO-serializing facade part of the
> interfaces
> > layer. See BookingServiceFacade for an example."
> >
> > No caso eu uso ViewModel em vez de DTO.
> >
> >
> >
> > --
> > Voc� recebeu esta mensagem porque faz parte do grupo .Net Architects
> > hospedado no Google Groups.
> > Para postar envie uma mensagem para
> dotnetar...@googlegroups.com
> > Para sair do grupo envie uma mensagem para
>
> > mailto:mailto:dotnetarchitects%252Buns...@googlegroups.com
>
> > Para mais op��es visite o grupo em
> > http://groups.google.com/group/dotnetarchitects?hl=pt-br
> >
> > --
> > Voc� recebeu esta mensagem porque faz parte do grupo .Net Architects
> > hospedado no Google Groups.
> > Para postar envie uma mensagem para dotnetar...@googlegroups.com
> > Para sair do grupo envie uma mensagem para
> > mailto:dotnetarchitects%2Bunsu...@googlegroups.com
> > Para mais op��es visite o grupo em
> > http://groups.google.com/group/dotnetarchitects?hl=pt-br
>
>
>
> Lemol-C
> ...não paro até chegar lá...
>
> Participe en la XVI Convencion Cientifica de Ingenieria y Arquitectura
> del 26 al 30 de noviembre de 2012. La Habana, Cuba:
> http://ccia.cujae.edu.cu
>
> Consulte la enciclopedia colaborativa cubana. http://www.ecured.cu
>
>
> --
> Voc� recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> mailto:dotnetarchitects%2Bunsu...@googlegroups.com
> Para mais op��es visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
>
> --
> Voc� recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> dotnetarchitec...@googlegroups.com
> Para mais op��es visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
Lemol-C
...não paro até chegar lá...
Participe en la XVI Convencion Cientifica de Ingenieria y Arquitectura del 26 al 30 de noviembre de 2012. La Habana, Cuba: http://ccia.cujae.edu.cu
Repositorio em serviço de dominio? talvez não seja necessario agora.
Notificar por email não é operação do dominio, verdade?
>
> From: Fernando Mondo
> Sent: Sunday, April 15, 2012 12:52 PM
> To: dotnetar...@googlegroups.com
> Subject: Re: [dotnetarchitects] Re: DDD - Camada de Aplicação e injeção de
> dependência
>
> eu tambem acho que estou misturando serviço de dominio com aplicação pois
> pelo que eu andei lendo a camada de aplicação só iria iniciar a transação
> e dar o saveChanges ou rollback + gravar log.
>
> e então eu teria um serviço de Dominio +- assim:
>
> public void ServicoLiberacao(){
> _provedorApi.CriarUsuario(usuario, senha);
>
> _contrato.TornarAtivo();
> _repositorioContrato.Add(_contrato);
> _notificador.EnviarEmail(_cliente);
>
> }
>
> mas daí eu teria uma camada de aplicação pequena demais, e no livro do
> Evans ele ainda diz que notificar por email é uma responsabilidade da
> Aplicação.
>
> talvez seja por isso que o igor e o edmilson usam o controller da camada
> de apresentação como camada de aplicação....
>
>
> Não entendí bem a lógica (essa nomenclatura me confunde :( ), mas, pelo
> que percebo, parte é Serviço de Aplicação e uma parte estaria em um
> Serviço de Dominio. Mas como disse, não entendí a lógica...
>
> Se voce está achando que é regra de dominio, então provavelmente tinha
> que
> ser/estar um serviço de dominio.
>
>
> Atenciosamente,
>
> Leza Morais Lutonda, Lemol-C
> http://lemolsoft.webs.com
> http://github.com/lemol
> @lemolsoft on twitter
> >
> > From: Fernando Mondo
> > Sent: Sunday, April 15, 2012 1:30 AM
>
> > To: dotnetar...@googlegroups.com
> > Subject: Re: [dotnetarchitects] Re: DDD - Camada de Aplicação e
> injeção de
> > dependência
> >
>
> > Voltei com mais indagações...
> >
> > confesso que não entendi sobre o que o igor e o edmilson afirmaram de
> > viewmodel na camada de aplicação..
> >
> > mas enfim, a minha dúvida inicial eu resolvi com o uso de factory.
> >
> > Atualmente o que eu tenho classes da aplicação que se parecem com
> isso:
> >
> > public class LiberarContrato
> > {
> > public LiberarContrato(Cliente cliente,Contrato contrato,
> IRepositorio,
> > ILog){...}
> >
> > public void Liberar(string usuario, string senha)
> > {
> > try{
> > _unidadeTrabalho.IniciarTrasacao();
> > _provedorApi.CriarUsuario(usuario, senha);
> > _contrato.TornarAtivo();
> > _repositorioContrato.Add(_contrato);
> > _notificador.EnviarEmail(_cliente);
> > _unidadeTrabalho.Salvar();
> > }
> > catch(exception e)
> > {
> > _unidadeTrabalho.RollBack();
> > _log.Gravar(e);
> > }
> > }
> >
> > }
> >
> > Fica a dúvida então: Deveria esta classe ser um serviço do Domínio, já
> que
> > eu tenho uma regra de negocio aqui dentro (ex: toda liberação exige
> criar
> > um usuario numa api externa, tornar o contrato ativo e entiar email ao
> > cliente)?
> >
> > Outra: deveria Dominio (ou Aplicação) possuir a interface IProvedorApi
> já
> > que elá é que usa (sabendo que eu vou implementá-la na infra)?
> > O MVC todo é parte da camada de Interface, ou User Interface.
> > E no outro eu quis dizer serviços da camada de aplicação. ;)
> >
> > Imagina assim, eu tenho dois projetos um WPF e um MVC certo? Não
> posso
> > assumir que o C do MVC será a camada de aplicação.
> > Logo MVC é só User Interface e o WPF tbm. E quem coordena é a
> > Application.
> >
> > Esse explicação está no site e é bem legal.
> >
> > "The application services in the sample application are responsible
> for
> > driving workflow and coordinating transaction management (by use of
> the
> > declarative transaction management support in Spring). They also
> provide
> > a high-level abstraction for clients to use when interacting with the
> > domain. These services are typically designed to define or support
> > specific use cases. See BookingService or HandlingEventService.
> >
> > In some situations, e.g. when dealing with graphs of lazy-loaded
> domain
> > objects or when passing services' return values over network
> boundaries,
> > the services are wrapped in facades. The facades handle ORM session
> > management issues and/or convert the domain objects to more portable
> > Data Transfer Objects) that can be tailored to specific use cases. In
> > that case, we consider the DTO-serializing facade part of the
> interfaces
> > layer. See BookingServiceFacade for an example."
> >
> > No caso eu uso ViewModel em vez de DTO.
> >
> >
> >
> > --
> > Você recebeu esta mensagem porque faz parte do grupo .Net Architects
> > hospedado no Google Groups.
> > Para postar envie uma mensagem para
> dotnetar...@googlegroups.com
> > Para sair do grupo envie uma mensagem para
>
> > mailto:mailto:dotnetarchitects%252Buns...@googlegroups.com
>
> > Para mais opções visite o grupo em
> > http://groups.google.com/group/dotnetarchitects?hl=pt-br
> >
> > --
> > Você recebeu esta mensagem porque faz parte do grupo .Net Architects
> > hospedado no Google Groups.
> > Para postar envie uma mensagem para dotnetar...@googlegroups.com
> > Para sair do grupo envie uma mensagem para
> > mailto:dotnetarchitects%2Bunsu...@googlegroups.com
> > Para mais opções visite o grupo em
> > http://groups.google.com/group/dotnetarchitects?hl=pt-br
>
>
>
> Lemol-C
> ...não paro até chegar lá...
>
> Participe en la XVI Convencion Cientifica de Ingenieria y Arquitectura
> del 26 al 30 de noviembre de 2012. La Habana, Cuba:
> http://ccia.cujae.edu.cu
>
> Consulte la enciclopedia colaborativa cubana. http://www.ecured.cu
>
>
> --
> Você recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> mailto:dotnetarchitects%2Bunsu...@googlegroups.com
> Para mais opções visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
>
> --
> Você recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> dotnetarchitec...@googlegroups.com
> Para mais opções visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
Lemol-C
...não paro até chegar lá...
Participe en la XVI Convencion Cientifica de Ingenieria y Arquitectura del 26 al 30 de noviembre de 2012. La Habana, Cuba: http://ccia.cujae.edu.cu
Consulte la enciclopedia colaborativa cubana. http://www.ecured.cu
--
Você recebeu esta mensagem porque faz parte do grupo .Net Architects hospedado no Google Groups.
Para postar envie uma mensagem para dotnetar...@googlegroups.com
Para sair do grupo envie uma mensagem para dotnetarchitec...@googlegroups.com
Para mais opções visite o grupo em http://groups.google.com/group/dotnetarchitects?hl=pt-br
Não consigo enchegar Email como uma regra de negocio e sim como uma notificação.
Se for assim todos os emails é regra de negocio e não o são.
> Usuario.AtivarUsuario();
> Usuario.EfetuarPublicacao();
> Usuario.AtualizarStatus("aprovado");
pode ser uma regra de negocio.
>
> From: Igor
> Sent: Wednesday, April 18, 2012 12:09 PM
> To: dotnetar...@googlegroups.com
> Subject: [dotnetarchitects] Re: DDD - Camada de Aplica��o e inje��o de
> depend�ncia
>
> Pelo que eu vi enviar email � uma notifica��o e n�o uma regra de negocio,
> o que acontece a camada de aplica��o coordena as suas regras de negocio,
> pois exemplo:
>
>
> {
>
> var Usuario = new Usuario();
>
> Usuario.AtivarUsuario();
> Usuario.EfetuarPublicacao();
> Usuario.AtualizarStatus("aprovado");
>
> Notificacao.EnviarEmailDeAprovacao(Usuario);
>
> }
>
> Note que esses metodos s�o da entidade, mas esse codigo fica na camada de
> aplica��o.
> Minhas regras de negocios ficam no dominio mas a coordena��o (ordem...)
> fica no servi�o da camada de Aplica��o.
>
> *Codigo para exemplificar.
>
> --
> Voc� recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> dotnetarchitec...@googlegroups.com
> Para mais op��es visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
Lemol-C
...não paro até chegar lá...
Atenção que o processo que consiste em:
pode ser uma regra de negocio.
> Usuario.AtivarUsuario();
> Usuario.EfetuarPublicacao();
> Usuario.AtualizarStatus("aprovado");
>
> From: Igor
> Sent: Wednesday, April 18, 2012 12:09 PM
> To: dotnetar...@googlegroups.com
> Subject: [dotnetarchitects] Re: DDD - Camada de Aplicação e injeção de
> dependência
>
> Pelo que eu vi enviar email é uma notificação e não uma regra de negocio,
> o que acontece a camada de aplicação coordena as suas regras de negocio,
> pois exemplo:
>
>
> {
>
> var Usuario = new Usuario();
>
> Usuario.AtivarUsuario();
> Usuario.EfetuarPublicacao();
> Usuario.AtualizarStatus("aprovado");
>
> Notificacao.EnviarEmailDeAprovacao(Usuario);
>
> }
>
> Note que esses metodos são da entidade, mas esse codigo fica na camada de
> aplicação.
> Minhas regras de negocios ficam no dominio mas a coordenação (ordem...)
> fica no serviço da camada de Aplicação.
>
> *Codigo para exemplificar.
>
> --
> Você recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> dotnetarchitec...@googlegroups.com
Lemol-C
...não paro até chegar lá...
Participe en la XVI Convencion Cientifica de Ingenieria y Arquitectura del 26 al 30 de noviembre de 2012. La Habana, Cuba: http://ccia.cujae.edu.cu
Consulte la enciclopedia colaborativa cubana. http://www.ecured.cu
--
Você recebeu esta mensagem porque faz parte do grupo .Net Architects hospedado no Google Groups.
Para postar envie uma mensagem para dotnetar...@googlegroups.com
Para sair do grupo envie uma mensagem para dotnetarchitec...@googlegroups.com
Para mais opções visite o grupo em http://groups.google.com/group/dotnetarchitects?hl=pt-br