Partager via


Construindo soluções com Entity Framework e arquitetura em múltiplas camadas.

Olá pessoal, tudo certo?

Esse assunto tem sido recorrente desde julho, retornando em algumas discussões com empresas de diversas áreas: Como organizar uma arquitetura de solução usando Entity Framework? Como representar as entidades de negócio, as interfaces de serviços e como passar esses dados entre as várias camadas de uma aplicação?

Para começar, tenho recomendado olhar a parte IV do AppArchGuide 2.0, que anunciamos semana passada, aqui:

patterns & practices : Application Architecture Guide 2.0
Ref.: https://blogs.msdn.com/wcamb/archive/2008/12/19/patterns-practices-application-architecture-guide-2-0.aspx

Uma arquitetura de referência interessante é a organização de uma aplicação desktop (Rich Client Application), como vemos a seguir:

image

Note que na camada de negócios, temos os Business Workflows, Business Components e os Business Entities bem definidos. Nesse cenário, os BE's representam as abstrações de dados que obtemos a partir da camada de dados, via Entity Framework.

Na sequência, um bom exemplo de implementação é dado no artigo do John Papa, que segue abaixo:

Entity Framework em arquiteturas de camadas
John Papa
Ref.: https://msdn.microsoft.com/pt-br/magazine/cc700340.aspx

O artigo apresenta uma solução que oferece um bom começo para quem está pensando em projetos com o Entity Framework. A figura a seguir apresenta a organização básica da solução, onde vemos as interfaces em WCF para comunicação entre a camada de apresentação e a camada de negócio.

image

Finalmente, vale lembrar que o Otávio fez uma apresentação sobre o assunto durante o último Tech-Ed Brasil 2008, usando o mesmo artigo do John Papa para falar sobre múltiplos contextos e boas práticas. Veja alguns comentários dele aqui:

Semana de acontecimentos
Ref.: https://blogs.msdn.com/otavio/archive/2008/10/19/semana-de-acontecimentos.aspx

Por enquanto é só! Até o próximo post :)

Waldemir.

Comments

  • Anonymous
    December 29, 2008
    Ótimo blog Waldemir. Os artigos são super interessantes. Sempre que posso, dou uma passada por aqui. Parabéns!

  • Anonymous
    January 06, 2009
    Olá Anderson, tudo certo? Obrigado pelos comentários no blog. :) Fique sempre a vontade para colocar seus comentários e sugerir temas que sejam relevantes para o nosso dia-a-dia como arquitetos. Um abraço e feliz 2009! Waldemir.

  • Anonymous
    February 06, 2009
    The comment has been removed

  • Anonymous
    February 08, 2009
    The comment has been removed

  • Anonymous
    December 04, 2012
    Olá Waldemir, este artigo continua sendo uma boa prática no framework 4.5 usando o Entity Framework?