Camada de serviço = Camada de aplicação = Camada do controlador GRASP [fechada]

Acho que a camada de serviço / aplicativo é a mesma que Larman descreve como Controlador GRASP, sendo o primeiro objeto além da camada da GUI que delega para a camada do domínio e deve ser reutilizável a partir da GUI diferent

camada @ Service (Evans) é igual à camada Application (Fowler) porque o próprio Fowler diz isso, em seu "bliki" sobre o "Modelo de Domínio Anêmico":http: //martinfowler.com/bliki/AnemicDomainModel.htm

Quote: "Camada de aplicação [seu nome para Camada de serviço]: define os trabalhos que o software deve realizar e direciona os objetos de domínio expressivos para solucionar problemas. As tarefas pelas quais essa camada é responsável são significativas para os negócios ou necessárias para a interação com as camadas de aplicativos de outros sistemas.Esta camada é mantida fina.Não contém regras ou conhecimentos de negócios, mas apenas coordena tarefas e delegados trabalham para colaborações de objetos de domínio na próxima camada abaixo.Não possui estado refletindo a situação dos negócios , mas pode ter um estado que reflete o progresso de uma tarefa para o usuário ou o programa. "

Agora considere a descrição acima (e também veja o livro PEAA da fowler, sobre a identificação de métodos da camada de serviço nos casos de uso) e também considere a imagem na descrição da camada de Serviço da Fowler que ilustra a camada de serviço como a primeira camada após a "interface do usuário" neste URL:http: //martinfowler.com/eaaCatalog/serviceLayer.htm

Compare agora a descrição da camada Serviço / Aplicativo acima mencionada com algumas das palavras de Larman sobre o Controlador GRASP (na 3ª edição de seu livro OOAD, mais vendido "Aplying UML and patterns", 302-306 anos): "... primeiro objeto além da camada da interface do usuário que recebe e coordena ("controla") uma operação do sistema ... "" ... representa um cenário de caso de uso no qual o evento do sistema ocorre ... "" ... Normalmente, um controlador deve delegar para outros objetos, o trabalho que precisa ser feito; coordena ou controla a atividade. Não faz muito trabalho por si mesmo .... "

Acho que a camada GRASP Controller da Larman é igual à camada Application / Service de Evans / Fowler. Outras pessoas discordam? Em seguida, explique as diferenças significativas entre esses conceitos e alguns exemplos da classe Controller em vez da classe Service / Applicatio

Minha pergunta nasce porque alguns dizem que a criação de objetos de domínio do modelo é de responsabilidade do controlador, em vez da outra camada de serviço / aplicativo. Mas você poderia me dar um exemplo de classe da camada de serviço e a diferença entre a classe do controlador?

questionAnswers(1)

yourAnswerToTheQuestion