Tutorial ASP.NET MVC 5 DDD + EF + AutoMapper + IoC + Dicas e Truques

81.845 visualizações

Publicada em

http://eduardopires.net.br/2014/10/tutorial-asp-net-mvc-5-ddd-ef-automapper-ioc-dicas-e-truques

Arquitetura de Sistemas Corporativos é um tema muito menos explorado do que ASP.NET MVC 5 e nem por isso é menos importante (na verdade é bem mais), neste vídeo tutorial eu mostrarei como criar uma arquitetura padrão DDD utilizando ASP.NET MVC 5.2, Entity Framework, AutoMapper, IoC com Ninject e muitas dicas para criar uma arquitetura modelo e totalmente responsável.

Publicada em: Educação

Tutorial ASP.NET MVC 5 DDD + EF + AutoMapper + IoC + Dicas e Truques

  1. 1. Tutorial ASP.NET MVC 5 DDD + EF + AutoMapper + IoC + Dicas e Truques http://eduardopires.net.br/2014/10/tutorial-asp-net-mvc-5-ddd-ef-automapper-ioc-dicas-e-truques Eduardo Pires Arquiteto de Sistemas Microsoft MVP – ASP.NET / IIS MCT, MCSD, MCPD, MCDBA, MCTS, PSD www.eduardopires.net.br
  2. 2. Modelo de Arquitetura MVC? • ASP.NET MVC é apenas a camada de apresentação. • O padrão MVC visa a separação de responsabilidades e nada mais. ASP.NET MVC (Camada de Apresentação) Arquitetura do Sistema (N Camadas)
  3. 3. Mas e o template do Visual Studio? • Mas no projeto do template não tem camadas… • Mas nos exemplos da internet... • Mas nos exemplos dos livros… • Mas… Mas… São assim apenas para ser o mais simples e didático possível ao ensinar como o ASP.NET MVC funciona! Não serve para ser o modelo de sua arquitetura.
  4. 4. Na minha empresa temos arquitetura Business Object, Layer Object, Value Object • ClienteVO • ClienteBO • ClienteDAO OUCH!… Mais um caso de “arquitetura” BOLOVO detectada, mas ainda há salvação.
  5. 5. DDD – Domain Driven Design • Uma abordagem de design • Complexa (no início) • Desenvolvimento guiado pelo Domínio • Isolamento de Responsabilidades • Abstração de Camadas • Indicado para aplicações corporativas
  6. 6. DDD – Domain Driven Design • Entidades • Objetos de Valor • Contratos (Interfaces) • Services • Factories
  7. 7. Então quer dizer que… Se eu montar minha aplicação utilizando ASP.NET MVC e aplicar DDD para guiar meu desenvolvimento, utilizar ORM’s, Repositórios, IoC, mapear minhas Entidades de Domínio com as ViewModels e entre outros patterns eu terei uma boa arquitetura? Sim! Ela será responsável, escalável, testável, reutilizável e sua manutenção será muito mais fácil e tranquila.

×