Skip to content

Como implementar os patterns mais utilizados no desenvolvimento de um sistema atualmente. Nele, iremos utilizar de: DDD, Base de Dados MSSQL (Externa), Bootstrap 4.3, Arquitetura MVC, .NET Core, Dapper

Notifications You must be signed in to change notification settings

eltonsa75/Curso_Dotnet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Curso Dotnet

O Dapper é um Micro ORM que funciona sobre o ADO.NET. É considerado o "Rei do Micro ORM" visto que em termos de velocidade, o mesmo é superior a grande parte dos Micros e Full ORM do mercado.​

Por muitos, o Dapper é considerado sim um ORM, porém, para outros o Dapper é apenas um mapeador de objeto.​

Entendemos um Full ORM, um framework que é capaz de serializar, gerar queries, armazenamento em cache de objetos e consultas, adminstrar concorrências, etc. Tudo em tempo de execução.​


O Micro ORM é apenas um "mapeador". Onde cria o objeto a partir do retorno da base de dados.​

Observe abaixo um benchmark entre um Micro ORM (Dapper) contra um Full ORM (Entity Framework).


A camada de dados é um proxy que fica entre a origem das requests (neste caso, aplicação MVC) e sua camada de entidades. Nesta camada, recebemos a request, realizamos a transação com a base de dados, é feito um trabalho de serialização e deserialização pelo ORM com a camada de entidades e é retornado um objeto para a camada de aplicação.

Utilizamos um pattern muito famoso no desenvolvimento web: O repository pattern.

Sua implementação trás vantagens ao seu sistema, tais como:

Padroniza as transações por cada entidade existente.

Permite que seja possível você trocar o seu ORM futuramente.

Permite que seu código seja mais limpo.

About

Como implementar os patterns mais utilizados no desenvolvimento de um sistema atualmente. Nele, iremos utilizar de: DDD, Base de Dados MSSQL (Externa), Bootstrap 4.3, Arquitetura MVC, .NET Core, Dapper

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published