Pergunta

Eu tenho uma camada de negócios que tem alguns objetos de negócios / Poços / entidades / whatever. Eu também tenho alguns repositórios para o acesso a dados. Até este ponto, eu tenho acesso aos repositórios diretamente da minha camada de interface do usuário. Eu estou em um ponto onde eu realmente preciso de mais algumas classes que não são CRUD em linha reta, por isso estou indo para criar algumas classes de lógica de negócios que vai fazer a lógica, e CRUD, e os repositórios não será acessado pelo mais UI (que provavelmente deveria ter sido feito desde o início).

O que devo chamar essas classes? A única coisa que posso pensar são as classes de serviço, mas eu tenho serviços WCF reais nesta aplicação, de modo que irá torná-lo confuso. Os serviços WCF também estará usando essas classes, assim que ter um uso de serviço de uma classe de serviço parece estranho e confuso.

Foi útil?

Solução

Eu uso o "Serviço" convenção de nomenclatura bem. É verdade o "serviço" tornou-se um termo muito sobrecarregado na indústria, mas faz mais sentido. Desenvolvedores revisão do código deve ser capaz de determinar a diferença entre um aplicativo / serviço Domínio vs um serviço WCF, e ao mesmo tempo ter uma chamada de serviço WCF outras classes de serviço pode parecer confuso, eu acho que você vai descobrir que ele não é. A ideia de um serviço é que ele é o código que executa uma função, e está disponível para uso por outro código. Pode ser um serviço interno, ou pode ser um serviço exposto externamente via http ou qualquer outra coisa. Mas a idéia de que o código faz é o mesmo.

Outras dicas

Se os seus 'serviços' estão orquestrando lógica de negócios usando um número de objetos de domínio, é provável que você implementar o Fachada Padrão - por isso, talvez você pode nomeá-los com este sufixo, por exemplo OrderManagementFacade

De sua descrição, parece que as classes do WCF são realmente implementar um serviço hospedeiro . Eu normalmente nomear tais classes com um sufixo "ServiceHost". Ele separa-los muito bem das classes de serviço real.

Assim, por exemplo, você teria sua lógica de negócio em uma classe chamada "CustomerService" ea classe WCF correspondente seria nomeado "CustomerServiceHost".

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top